Computer Science

Algorithms in Computer Science

Algorithms in computer science are step-by-step procedures or formulas for solving problems. They are a fundamental part of computer science and are used to perform various tasks, such as searching, sorting, and data analysis. Efficient algorithms are crucial for optimizing the performance of computer systems and applications.

Written by Perlego with AI-assistance

7 Key excerpts on "Algorithms in Computer Science"

Index pages curate the most relevant extracts from our library of academic textbooks. They’ve been created using an in-house natural language model (NLM), each adding context and meaning to key research topics.
  • The Cyber Patient
    eBook - ePub

    The Cyber Patient

    Navigating Virtual Informatics

    ...Chapter 6 Algorithms Effective algorithms make assumptions, show a bias toward a simple solution, trade off the costs of error against the cost of delay, and take chances. Brian Christian American nonfiction, science, and philosophy author Tom Griffiths Professor of Psychology and Cognitive Science at UC Berkeley and Director, Computational Cognitive Science Lab Introduction An algorithm is a constructed set of specifically defined procedures that act upon stored or input data in a specified sequence. An algorithm answers a specific question in response to a hypothesis or to generate intelligence to create a hypothesis for further analysis. The key is to ask the right question that will have a measurable impact on day-to-day health decisions. This chapter provides a fundamental overview of algorithms. These concepts have been applied among all technology platforms. Understanding Algorithms Algorithms can execute a process or build models for predictive behavioral analysis. An algorithm could be an informal set of processes or a formal, specifically defined process. Formal processes are required for algorithms managed via the use of a computer programming language that tells the computer what to do. One simple algorithm written for an insurance company’s claims adjudication system requires that, for every claim submitted, a patient be a member of the company’s insurance program. If the patient is not part of that program, then the algorithm directs the insurance company to deny the claim. An informal algorithm can be expressed using everyday language. Language coupled with the structure of grammar and use of known references can create a prescribed set of procedures. Consider the following narrative: At approximately 8 a.m. the students will arrive at school to register for the final examination. The test will begin at 9 a.m. Late arrivals will not be allowed into the examination room. The relationships in the narrative are straightforward...

  • The Social Power of Algorithms
    • David Beer, David Beer(Authors)
    • 2019(Publication Date)
    • Routledge
      (Publisher)

    ...With respect to the latter, the paper provides a critical appraisal of six methodological approaches that might profitably be used to produce insights into the nature and work of algorithms. Thinking critically about algorithms While an algorithm is commonly understood as a set of defined steps to produce particular outputs it is important to note that this is somewhat of a simplification. What constitutes an algorithm has changed over time and they can be thought about in a number of ways: technically, computationally, mathematically, politically, culturally, economically, contextually, materially, philosophically, ethically and so on. Miyazaki (2012) traces the term ‘algorithm’ to twelfth-century Spain when the scripts of the Arabian mathematician Muḥammad ibn Mūsā al-Khwārizmī were translated into Latin. These scripts describe methods of addition, subtraction, multiplication and division using numbers. Thereafter, ‘algorism’ meant ‘the specific step-by-step method of performing written elementary arithmetic’ (Miyazaki, 2012, p. 2) and ‘came to describe any method of systematic or automatic calculation’ (Steiner, 2012, p. 55). By the mid-twentieth century and the development of scientific computation and early high level programming languages, such as Algol 58 and its derivatives (short for ALGOrithmic Language), an algorithm was understood to be a set of defined steps that if followed in the correct order will computationally process input (instructions and/or data) to produce a desired outcome (Miyazaki, 2012). From a computational and programming perspective an ‘Algorithm = Logic + Control’; where the logic is the problem domain-specific component and specifies the abstract formulation and expression of a solution (what is to be done) and the control component is the problem-solving strategy and the instructions for processing the logic under different scenarios (how it should be done) (Kowalski, 1979)...

  • Lessons in Teaching Computing in Primary Schools
    • James Bird, Helen Caldwell, Peter Mayne(Authors)
    • 2017(Publication Date)
    • Learning Matters
      (Publisher)

    ...This can be achieved without the need for ‘expert’ knowledge and even in many cases without the need to use a computer! The New Collins Concise English Dictionary (2011) defines algorithms as any method or procedure of computation, usually a series of steps. Computational thinking should be seen as a problem-solving process, which incorporates the use of algorithms by analysing and logically organising data. Lesson idea: introducing algorithms This lesson focus is on algorithms being a sequence of precise instructions and related to the need for digital devices also to have precise instructions, in order to follow a preset program with a predetermined outcome. Before you start Be clear in your own mind what an algorithm is and how the concept can be embedded in a cross-curricular way. Pupils need to be grouped according to ability. Things you need •    Toaster, bread, knife and margarine for the teacher demonstration. •    Laminated cards – on each card should be one of the steps for cleaning teeth (the sequence has been decomposed into smaller steps), Blu-tack, mini-whiteboards. Context After an initial teacher demonstration, this particular lesson plan focuses on creating an algorithm for cleaning teeth, which would link well to personal, social, health and economic education, and with a topic on ‘All About Me’. The principle of this lesson could also be used in many different contexts, for example, crossing a road, making a sandwich, getting dressed. Learning objectives •    To understand the term ‘algorithm’. •    To understand the precise nature of algorithms. •    To understand that algorithms provide the precise instructions for common digital devices. Lesson outline In order for pupils to understand the term ‘algorithm’, they need to create some of their own and try them out in the physical sense...

  • Rules
    eBook - ePub

    Rules

    A Short History of What We Live By

    ...However, from a historical perspective, such technical debates played a minor role before the twentieth century. For preceding centuries, the core meaning of the word algorithm was the solution of specific problems by step-by-step procedures of calculation. But long before the word there was the thing. From ancient mathematical traditions in Babylonia, Egypt, India, China, and elsewhere, texts survive that contain numerical problems and sophisticated solutions that are clearly algorithmic in the sense that crystallized around the word as it came to be assimilated into medieval Latin and other languages after circa 1200 CE. A brief and incomplete sampling of the kinds of problems to which the term algorithm is retrospectively applied might include: ancient Egyptian problems (c. 1650 BCE) on how to distribute 100 loaves of bread among 10 men if 50 are to be distributed among 6 men and the other 50 among the remaining 4; 9 Old Babylonian prediction rules (c. 1100 BCE) for the length of the lunar month; 10 Chinese procedures for the extraction of square and cube roots (1st c. CE); 11 and medieval Sanskrit problems (12th c. CE) on how to determine the purity of gold compounded of four parcels of gold, all of different weights and degrees of fineness. 12 All of these problems and the methods used to solve them—which often require great erudition and insight on the part of modern scholars to reconstruct—fit neatly into at least the broader modern category of algorithms: a step-by-step procedure to solve mathematical problems by calculation. Was this also the category to which such problems belonged in the learned cultures that posed and solved them? Scholars who have painstakingly reconstructed these traditions have expressed doubts on this score, even if they are convinced that the methods qualify as algorithms in the modern sense...

  • Numb
    eBook - ePub

    Numb

    How the Information Age Dulls Our Senses and How We Can Get them Back

    • Charles R. Chaffin(Author)
    • 2021(Publication Date)
    • Wiley
      (Publisher)

    ...CHAPTER 20 Algorithms My Grandma Eunice makes the best blueberry pie. I don't know how she does it, but if you eat it warm with vanilla ice cream, you have yourself a winner. Not long ago it occurred to me that Grandma uses an algorithm to make that pie. It was not that she somehow used TikTok to make the pie or had some kitchen robot assist her. (She is not one for technology. The iPad we bought her for Christmas a few years back has made a lovely, expensive coaster for her coffee). Nevertheless, an algorithm is essentially “a set of guidelines to describe how to perform a task.” It can be a recipe for blueberry pie, or code programmed into social media or a department store website. The term “algorithm” is thrown about a great deal. It is always seen as a creature that lives within large computers and knows many things about us. This is actually kind of true, except the creature part. We see algorithms in all parts of our lives, but usually as codes that tell computers what to do, and they usually consist of words like “and,” “then,” and “or.” Algorithms are used within social media, entertainment, police stations, hospitals, and just about anywhere else decisions of some sort are being made. Algorithms use our past behavior to tell us what to look at on social media and what to watch on Netflix. Based upon what we viewed previously, there is a good chance that we will like this or that. Algorithms are put into place so that we will stay on the website or social media platform for as long as possible, or will purchase the recommended products on Amazon or Target. They also tell doctors how to diagnose patients, using an extensive database of past patients with similar medical data. Algorithms automate so much of our lives, from stock trading to the booking of travel. They assist advertisers in serving us ads on all of our devices that are based upon the sites we have visited and the type of social media posts with which we engage...

  • Epistemological Approaches to Digital Learning in Educational Contexts
    • Linda Daniela(Author)
    • 2020(Publication Date)
    • Routledge
      (Publisher)

    ...299). As stressed by Hromkovič and Lacher (2017, p. 4) already Euclid formulated algorithms in his ‘Elements’, among them being the famous Euclid’s algorithm. The term ‘algorithm’ is due back to al-Khwarizmi, who wrote a book about Indian digits around the year 825. Humankind tried to develop algorithms as long as anyone can remember. People generated knowledge in order to understand the world around them and specially to apply this knowledge to develop ‘procedures’ to reach their goals Fellows et al. (2005 in Tekerek & Altan, 2014, p. 133) described algorithm as “a set of instructions that are required to follow for completing a task”. Furthermore, Grover and Pea (2018) argued that algorithms and AT, together with patterns and pattern recognition, abstraction and generalization, evaluation, and automation, are the key components of CT, whereas Hromkovič et al. (2017) claimed that even though AT and CT were introduced in different eras and consider these two concepts to be equivalent and interchangeable, at times, they can be expressed as the same concept. For Futschek (2006), AT is an ability that is necessary at any stage of the problem-solving process. In the Czech Republic, educational blocks-based programming environment Scratch and educational robotics (e.g., LEGOMindstorms, ozobots) are being introduced into schools to develop pupils’ computational thinking following the idea that pupils would “become not merely passive consumers of computer technology but rather active designers of computer programs and applications” (Dewey, 2017). The aim of this case study is to identify changes in Czech elementary school pupils’ (grade 5 and 6) AT through programming in Scratch 2.0. Literature review Some computer scientists are not convinced that CT enhances general cognitive skills (e.g. problem-solving skills). Denning (2017, p. 37) declares that, “many education researchers have searched for supporting evidence about it but have not found any”...

  • Integrating Computer Science Across the Core
    eBook - ePub
    • Tom Liam Lynch, Gerald Ardito, Pam Amendola(Authors)
    • 2020(Publication Date)
    • Routledge
      (Publisher)

    ...Thirteen chocolates divides into three groups of four, with one left over. So, by taking one chocolate in the first round, and then four minus whatever the other person takes in the subsequent rounds, this algorithm ensures that the other player is always left with the chili.” The clip helps playfully drive home the instructive nature of algorithms—that they are like recipes or dance moves. But it also alludes to the intentionality inherent in algorithms, that someone designed the algorithm and that their intentions might not always be neutral or kind. Recall the Blueprint definition. It is not just that algorithms provide “a generalized and repeatable sequence of instructions that achieve a particular purpose and output, given a set of inputs,” as described in the first part of its definition. But rather, it is the second sentence in the definition that merits equal or greater attention, especially the last clause: “to understand when, why and how to implement an algorithm, and to consider who or what might be affected.” The last clause refers to the intentions of those who compose algorithms, to the ways in which their work has intended and unintended consequences in the world. Algorithms are not just math or computer code. They have very real consequences in peoples' lives, not just hot chilis. Algorithms are used to determine what interest rate you get on a mortgage. Algorithms are used in large school districts to place children into kindergarten and to set the cutoff scores for teacher effectiveness ratings. Algorithms are even used by judges in some counties to sentence criminals to jail. We would go out on a limb to say that your average banker or district official or judge would be hard pressed to explain in any detail what algorithms are and how the way they are formulated can actually perpetuate inequity and discrimination...