What is Algorithms: Definition and 150 Discussions

In mathematics and computer science, an algorithm ( (listen)) is a finite sequence of well-defined, computer-implementable instructions, typically to solve a class of specific problems or to perform a computation. Algorithms are always unambiguous and are used as specifications for performing calculations, data processing, automated reasoning, and other tasks. In contrast, a heuristic is a technique used in problem solving that uses practical methods and/or various estimates in order to produce solutions that may not be optimal but are sufficient given the circumstances. As an effective method, an algorithm can be expressed within a finite amount of space and time, and in a well-defined formal language for calculating a function. Starting from an initial state and initial input (perhaps empty), the instructions describe a computation that, when executed, proceeds through a finite number of well-defined successive states, eventually producing "output" and terminating at a final ending state. The transition from one state to the next is not necessarily deterministic; some algorithms, known as randomized algorithms, incorporate random input.The concept of algorithm has existed since antiquity. Arithmetic algorithms, such as a division algorithm, were used by ancient Babylonian mathematicians c. 2500 BC and Egyptian mathematicians c. 1550 BC. Greek mathematicians later used algorithms in 240 BC in the sieve of Eratosthenes for finding prime numbers, and the Euclidean algorithm for finding the greatest common divisor of two numbers. Arabic mathematicians such as al-Kindi in the 9th century used cryptographic algorithms for code-breaking, based on frequency analysis.The word algorithm itself is derived from the name of the 9th-century mathematician Muḥammad ibn Mūsā al-Khwārizmī, whose nisba (identifying him as from Khwarazm) was Latinized as Algoritmi. A partial formalization of the modern concept of algorithm began with attempts to solve the Entscheidungsproblem (decision problem) posed by David Hilbert in 1928. Later formalizations were framed as attempts to define "effective calculability" or "effective method". Those formalizations included the Gödel–Herbrand–Kleene recursive functions of 1930, 1934 and 1935, Alonzo Church's lambda calculus of 1936, Emil Post's Formulation 1 of 1936, and Alan Turing's Turing machines of 1936–37 and 1939.

View More On Wikipedia.org
  1. G

    Other C: Data structures and algorithms books of solved problems

    What books of solved problems (free in pdf) would you recommend for data structures and algorithms in C (linked lists, trees, sorting and searching algorithms, graphs, recursion, files)? Note: I am not looking for theoretical books, but books of solved problems. Thanks for replies.
  2. B

    Discrete Algorithm Books for C++ and Python Programmers

    Could you recommend me a book or two treating the algorithms and their mathematical foundation, designs, and analysis? My main programming languages are C++ and Python.
  3. maistral

    Nonlinear constrained optimization - how?

    Perhaps the title says it all, but I should expand it more, I guess. So I am trying to explore more about constrained optimization. I noticed that there are very little to no formal (with examples) discussions on algorithms on nonlinear constrained optimization in the internet. They would...
  4. evinda

    MHB Introduction to Algorithms - Cormen

    Hello! (Wave) I wanted to ask you if you have the second edition of Introduction to algorithms by Cormen, at which the chapters 30-35 are included, because the prof suggested us to look at the following exercises: 30.1-1 30-1 34-1 34-3 35-1 but I can't find them.
  5. J

    C/C++ Practicing algorithms in C or C++98 to make things harder

    Is it a good idea to do "coding drills" in C or C++98 just to make things harder? I've been doing that and it seems to help because there's so much more I need to think about in order to cover all the corner cases and make things compact. It's like practicing baseball with a weighted bat so...
  6. Arsenic&Lace

    Are microcanonical algorithms still used in lattice QCD?

    I stumbled across a paper which stated that the relation between statistical mechanics and field theory is exploited to recast lattice QCD in terms of a "microcanonical ensemble" of sorts. I was curious to know if this was still a commonly used technique. The paper in question...
  7. X

    Power learning - 16 hours a day

    I have big plans for summer (note: I still plan on exercising, eating healthy, and showering regularly. Of course, my goal is 12-16 hours per day, 5-6 days a week), 10 math books to finish in 4 months of moderate to very hard difficulty (for me, not in general. I plan on learning all the...
  8. evinda

    MHB Two different algorithms for valuation of polynomial

    Hello! (Wave) The following part of code implements the Horner's method for the valuation of a polynomial. $$q(x)=\sum_{i=0}^m a_i x^i=a_0+x(a_1+x(a_2+ \dots + x(a_{m-1}+xa_m) \dots ))$$ where the coefficients $a_0, a_1, \dots , a_m$ and a value of $x$ are given: 1.k<-0 2.j<-m 3.while...
  9. O

    Algorithms learning materials and exercises

    Hello I'm teaching assistant at one university in Bosnia and Herzegovina (department for computer science) and I have recently been chosen to be an assistant at "Introduction to computer algorithms" subject. First few classes are based on mathematical background (induction, recursion, algorithm...
  10. N

    Genetic Algorithms, Why does random crossover work?

    Hi all, I understand Genetic algorithms aside form why crossover helps things, it has no guarantee of getting the best characteristics of each chromosome. Ie say you had a genetic algorithm to calculate square roots, fitness = 1(Abs(NumToFindRoot of-(Guess*Guess)) and your guess was a binary...
  11. W

    Self-Learning Help: Discovering Algorithms without a Math Background

    Hello, I still haven't introduced my self, I'm new here. Since I don't like typing about things on the wrong place I will jump directly into my problem. I have learned to program at home, I'm familiar with the syntax of C/C++/C#/Java/Python/PHP/HTML & CSS/JavaScript/bash/batch and a little bit...
  12. evinda

    MHB Function of Algorithms: Count & Sort

    Hello! (Wave) Could you explain me the function of the following two algorithms? (Thinking) int countSort(int arr[], int n, int exp) { int output[n]; int i, count[n] ; for (int i=0; i < n; i++) count[i] = 0; for (i = 0; i < n; i++) count[ (arr[i]/exp)%n ]++...
  13. evinda

    MHB Exploring Static Variables in Algorithms

    Hello! (Smirk) Suppose that we have an algorithm of the form: Algorithm(NODE *P){ static int s=0; Algorithm(P->RC); ...... Algorithm(P->LC); ...... s++; } where P is the root of a binary tree, for example this one: When we call the function Algorithm(a), s will get the value...
  14. David Carroll

    Are there algorithms for untangling knots?

    Everytime I sit down at the computer, I pull out my earbuds to plug into the harddrive so I can listen to music while I post things on PF.com...among other things :) The problem is, everytime I pull my earbuds out of my pocket, it's all tangled in a mess. My method is, I start with the...
  15. moriheru

    Introduction on quantum computers and algorithms

    Greetings, I am looking for a Introduction on quantum computers and algorithms such as shores algorithm(spelling may be wrong).The level of mathematics and QM is irelavent, thus integral calculation and nth degree differentail equation of any form are no problem. Any recommendations are apreciated.
  16. petormojer

    What branches of mathematics do I need to know to make AI algorithms?

    I am in high school and I don't know much math. By AI I mean Artificial Intelligence. And by AI algorithms, I mean like algorithms that can allow a program to distinguish object from object in a picture, what key word to use based on data from the past, "learns" you and other objects, and etc.
  17. F

    Solving Randomized Algorithm Problems: Exploring Math Behind it

    I find this problem pretty interesting and I'd like to know more about it and what topic of math it comes from. Amy and Chris stand opposite from each other at a table. Amy has a bag filled with certain shapes and these shapes are squares, circles and triangles. On the table there are 5...
  18. A

    Algorithms for atmospheric water balance method

    Hi I want to estimate divergence of water vapor flux in atmosphere with NCEP/NCAR data I have the equations for that and i want the algorithms to implement it for NCEP/NCAR data. I have a paper with algorithms for ECMWF data. Can i take this? or it required new algorithms for my data
  19. H

    Quantifying randomness using clustering algorithms

    Greetings, I'm not sure if this site, or this area of the site, is the most likely place for me to get an answer to the question I am about to ask - so if anyone reads the question and doesn't know the answer, but knows of a more likely place for me to get an answer, please let me know, it...
  20. A

    How to Perform Operations on Big O Terms?

    Is there a standard algorithm or procedure that defines addition, multiplication of big O terms. I want definitions for problems like:- 1) (x-1) * O(x) 2) O((x-a)2) where a is some positive number etc. Since I want to implement this on a computer I would prefer some algorithm or paper...
  21. S

    What Is the Efficiency of Combining Different Algorithm Complexities?

    *solved Homework Statement Lets say we have three algorithms, which include the following complexities 200n, 3n^2, 2^n-1. What would be a combined algorithm which is efficient? Homework Equations The Attempt at a Solution Let me know if I'm on the right path here. 100n+3n^2 + 2^(n-1)...
  22. A

    How are there so many sorting algorithms?

    I was looking through the list of sorting algorithms and there are so many of them! A simple problem where each element is less that or greater than the next term has so many solutions. How is that? My question is a rhetorical one but is there any limit to number of different techniques for...
  23. A

    Possible application of Genetic Algorithms

    Ok so I have a view ideas in mind for a project I was planning on doing involving genetic algorithms for my high school science fair class. I do have 3 mentors one a mathematician, a computer scientist who focuses on GAs, and a physicist who focuses on nano structures. here where I live, but...
  24. J

    MHB How Does the Selection Sort Algorithm Work?

    Sort with Selection Sort algorithms the following list: 329, 363, 373, 334, 320 Give the intermediate lists at each step. I found the following information about Selection Sort. It states as follows: "The idea of selection sort is rather simple: the next largest (or smallest) element in the...
  25. J

    MHB Intermediate Steps in Insertion Sort Algorithm

    Sort with Insertion Sort Algorithms the following list: 329, 364, 373, 334, 320 Give the intermediate lists at each step. Can somebody please tell me if this is correct for Insertion Sort Algorithms? 329, 364, 373, 334, 320 1. 329, 364, 373, 334, 320 2. 364, 329, 373, 334, 320 3. 329...
  26. A

    Eigen Value Approximation algorithms?

    Hi Guys, I have just started studying about this field. Can you give me some ideas about some best eigen value estimators? Both for SPD and non-SPD matrices. Thanks you. :-)
  27. S

    Java [Java] what's wrong with my bubble sort algorithms?

    I have 2 possibilities, non of them worked: PD: I am sure that all the methods inside this method(s) are correct and I am sure that the program's GUI is refreshing effectively. public void metodo1() { for (int i=0; i<(perros.size()); i++){ for (int j=perros.size()-1...
  28. Greg Bernhardt

    Introduction to Algorithms by Thomas H. Cormen

    Author: Thomas H. Cormen (Author), Charles E. Leiserson (Author), Ronald L. Rivest (Author), Clifford Stein (Author) Title: Introduction to Algorithms Amazon Link: https://www.amazon.com/dp/0262033844/?tag=pfamazon01-20 Prerequisities: Contents:
  29. dexterdev

    Algorithms and Sources of entropy for PRNG and TRNG?

    Hi PF, I would like to implement different random number generators using AVR microcontroller (both PRNG and TRNG). So I would like to get suggestions about different sources of entropy for TRNG and algorithms for PRNG. Also wanted to test the randomness. And What is chaos theory...
  30. J

    [DSP] radix-2 DIT and DIF algorithms

    Homework Statement Hi, I literally can't see difference between DIT and DIF algorithms. Would be kind enough to explain a difference between two algorithms ? Both algorithms have the same number of multiplications and additions for given signal: \frac{N}{2}log_{2}(N) - No. of...
  31. S

    Evolving Prime Number Algorithms: Can Computers Duplicate Human Programming?

    there are many prime number algorithm the simplest being dividing all the number less than the prime number. then comes division of number less than or equal half of the number to prime number with the prime number finally the division by all the smaller prime number than the given number...
  32. I

    MHB Problem on Graph Theory and Algorithms

    G = (V, E) a graph with V = {1, . . . , n}. We have the function f : V → V defined f (v) = min{u|u ∈ V, dG (v, u) ≤ 2}.Demostrate that vw ∈ E(G) with f (v) != f (w) then G has the P4 subgraph induced I don;t understand what to demostrate/to do. Any advice?
  33. S

    Programming algorithms vs. Buying

    I'm an IT consultant and would like to ask for opinions. Do you think it is smarter to program algorithms or buy them from a library? Especially for complicated algorithms involving higher math functions. Some libraries charge a flat rate with unlimited downloads, they check their algorithms...
  34. I

    Thinking algorithms and how to amplify analytical methods in daily life

    I am an engineering student. I am an average student. I don't think my methods of analysis and thinking are proper. I did take steps to improve my thinking abilities by becoming a left-handed person, solving sudoku and lateral thinking puzzles. I want to be a scientist in my life. But i...
  35. K

    Learn Robotic SLAM Algorithms for Hobby & Career Change: Tips and Resources

    I want to learn about robotics. Specifically, I want to implement and use SLAM algorithms. This is for hobbyist reasons, and to hopefully fuel a career change. I have a strong math background. My programming skills are not finely honed, but they aren't bad either. I went through the free...
  36. A

    Algorithms for infinite geometric series via long division?

    Algorithms for infinite geometric series via long division?? I can't seem to find any algorithms for this on the internet easily. If I have a function of the form f(x)=\frac{a}{x+b} there should be an algorithm I can use to find some terms of the corresponding series \sum...
  37. A

    Help in Optimization using Genetic Algorithms

    Currently I am doing models for my system. I have finished all of them designing three defferent controllers (Feedback Linearization Controller FLC , Sliding Mode Controller SMC and Fuzzy Sliding Mode Controller FSMC).Now I am asked to optimize the FSMC using Gentic Algorithms but I have no idea...
  38. S

    Can somebody look over my proof? (Asymptotic notation and algorithms)

    Hey. I'm self studying my way through an algorithms book, and one of the questions at the end of a section is to prove that log(n!) \in \Theta (n log(n)). I wrote up what I believe is a valid proof. However, I don't have much experience writing formal proofs (and even less experience with...
  39. F

    Quantum algorithms on Graphs VS Quantum Graphs

    Hello people, i am an undergraduate student on computer science (so i don't have a strong background in physics) and i am very interested in quantum mechanics and its affection the way we see information. I am studying for my "thesis" (well it's not exactly thesis when you talk about...
  40. S

    Solving Inequalities Arising from Algorithms Study

    Hey everybody, I'm a little embarrassed to be asking this question as I feel it is extremely easy, but I will do so anyway. I'm self studying some algorithms, and the book that I'm using claims that a n^2 + b n + c \in \Omega(n^2) Of course, this is equivalent to saying that there...
  41. C

    MHB Problem on Graph Theory and Algorithms

    The problem is as follows: --------------------------------------------------------------------------------------------------------------------------------- Let G be a connected graph. For a vertex x of G we denote by G−x the graph formed by removing x and all edges incident on x from G. G is...
  42. A

    Genetic Algorithms: Choosing a Fitness Function

    Does anyone know of a good fitness function for evaluating an animal characteristic in genetic algorithms? I'm doing a project. The prompt is: Select some features of an actual organism and design a genetic algorithm together with a reasonable fitness landscape to evolve the organism in time...
  43. A

    Genetic Algorithms: Choosing a Fitness Function

    Does anyone know of a good fitness function for evaluating an animal characteristic in genetic algorithms? I'm doing a project. The prompt is: Select some features of an actual organism and design a genetic algorithm together with a reasonable fitness landscape to evolve the organism in time...
  44. K

    Discrete Optimization - Genetic Algorithms

    Homework Statement I have a whole two courseworks on Genetic Algorithms, but we have been shown no examples. I am stumped! 1. A function f is set to depend on five variables x1, . . . , x5 where x1 can take 2 different values, x2 can take 8 different values and x3, x4, x5 each take 4 different...
  45. Dotini

    Human Eyes See Cosmic Bubbles that Algorithms Miss

    I thought this story was charming, since it hints that there still might be a few things people can do that computers cannot (yet) do. I have no idea of the significance of these bubbles, but I'd be interested to hear others comments...
  46. Loren Booda

    Easy algorithms to produce big numbers

    How can a novice simply generate a large number > 1010 in a few steps?
  47. S

    Comp Sci Data Structures & Algorithms in JAVA: Graphics using JFrame

    Homework Statement This assignment handles topics of events and GUI-elements. It's a little game. The task: create a window with a button that randomly relocates to a different position on the screen each time it is hit. The player has to hit the button 10 times, the score is the time needed...
  48. L

    Complexity analysis of algorithms

    Homework Statement Hello everyone. I am trying to analyse the complexity of an image processing algorithm. I have only the basic block diagram of the algorithm and I am trying to perform the complexity block by block. However, I do not know how to start and would like someone to point me in...
  49. X

    How do collision algorithms work (like Angry birds)?

    Hi, Does anyone know how to write an algorithm for collisions between many objects? An example like this would be the game Angry Birds which uses the Chipmunk physics engine? Chipmunk is based of "contact persistence algorithm" but I can't find out really what that is... any ideas on how to...
  50. J

    I with some algorithms problems

    I'm having problems solving this assignment. I don't understand how to solve for big-oh, big omega or big theta. 0.1. In each of the following situations, indicate whether f = O(g), or f = Ω(g), or both (in which case f = Θ(g)). f(n)---------------------g(n) (a) n - 100------------ n -...
Back
Top