NOTIFICATION: These examples are provided for educational purposes. Using this code is under your own responsibility and risk. The code and information is given ‘as is’. I do not take responsibilities of how they are used.

< List of Common Algoritms – Part 1 | List of Common Algorithms – Part 3 >

  1. Adjacency-matrix representation: Numbered vertices of a graph are represented in a matrix.
  2. Breadth-first search: Algorithm for searching a graph. All the edges of a graph are discovered in a systematic search. Computing the distance from the start point  to each reachable vertex.
  3. Topological sort: Linear ordering of all vertices of a graph in with the one vertex must appear before another in an order.
  4. Minimum Spanning Trees: Algorithm design to solve undirected graphs.
  5. Kruskal’s algorithm: Algorithm based on the generic minimum-spanning-tree algorithm. It finds all the edges that connect any two trees in the forest.
  6. Prim’s algorithm: Algorithm based on the generic minimum-spanning-tree algorithm but behaves similar to Dijkstra algorithm. Used for finding the shortest path in a graph.
  7. Shortest-paths problem (SPP): Given a weighted, directed graph plus a weight function map the edges to real-valued weights. Find the shortest path.
  8. Bellman-Ford algorithm: Single-source shortest-paths problem in which edge weights may be negative.
  9. Single source shortest paths in directed acyclic graphs: Topologically sorting the directed acyclic path to provide a linear ordering on the vertices.
  10. Dijkstra’s algorithm: Repeatedly a vertex is selected with the minimum shortest-path estimate by adding the weight and relaxing all edges leaving the first edge.
  11. All-Pairs Shortest Paths: Finding the shortest paths between all pairs of vertices in a graph.
  12. Floyd-Warshall algorithm: Dynamic-programming formulation to solve all-pairs shortest-paths problem on a directed graph.
  13. Johnson’s algorithm for sparse graphs: Finding the shortest  paths between all pairs. Better than either repeated squaring of matrices or Floyd-Warshall algorithm.
  14. Maximum Flow: Problem concerting flow networks.
  15. Ford-Fulkerson method: Methods for maximum flow problem which focus on residual networks, augmenting paths, and cuts. Essential concept for maximum flow min-cut theorem.
  16. Edmonds-Karp algorithm: Algorithm that implement the computation of the augmenting path with a breadth-first search.
  17. Maximum Bipartite Matching: Matching of maximum cardinality.
  18. Push-relabel Algorithm: Way to solve asymptotically fastest maximum-flow algorithms.
  19. Relabel-to-front algorithm: A push-relabel algorithm better fit for dense networks.
  20. Zero-one principle: Sorting a network with this principle allows to focus on their operation for input sequences consisting solely of 0’s and 1’s.
  21. Bitonic sorting network: A bitonic sequence that monotonically increases and then decreases. This is a comparison network that sorts bitonic sequences of 0’s and 1’s.
  22. Half-cleaner: Bitonic sorter which is composed  of several stages. Each of these stages is called half-cleaner which are a comparison network of depth 1.
  23. Bitonic sorter: A network that sorts bitonic sequences.
  24. Merging network: Networks that can be merge two sorted input sequences into one sorted output sequence.
  25. Permutation network: inputs and output are connected according to any allowed permutation.
  26. Strassen’s algorithm: Recursively algorithm used for matrix multiplication.
  27. LUP decomposition: Find three matrices such that the multiplication of a permutation matrix with a custom defined matrix is the same as the multiplication of a a unit lower-triangular matrix with an upper-triangular matrix.
  28. Forward and back substitution: Way to solve lower-triangular system.
  29. Least-squares approximation: Way to provide curves to given sets of data points in symmetric positive-defined matrices.
  30. Rabin-Karp algorithm: string-matching algorithm.
  31. Knuth-Morris-Patt algorithm: linear-time sting-matching algorithm.
  32. Jarvis’s march: Way to compute the convex hull of a set of points by using package wrapping technique.
  33. Hamiltonian Cycles: A simple cycle that contains each vertex of an undirected graph.
  34. Vertex-cover problem: Undirected graph in which each vertex covers its incident edge.
  35. Digital Differential Analyzer (DDA): Scan-conversion line-drawing algorithm.
  36. Bresenham’s Line Algorithm: Efficient raster line-generating algorithm in which only incremental integer calculations are used.
  37. Midpoint Circle Algorithm: Raster algorithm in which each unit interval, we determine the closest pixel position that match the circle path at each step.
  38. Midpoint Ellipse Algorithm: Similar algorithm used for drawing circles. After determining the curve positions for the ellipse, all the points are shift using a fixed offset so that the ellipse is centered.
  39. Spilling Concave Polygons: Split identified concave polygon into a set of convex polygons. Another variation is to split the concave polygon into a set of triangles.
  40. Inside-Outside Test: System to identify interior areas of a plane figure by using odd-even rule (also known as odd-parity rule). Another method use is called non-zero winding-number rule.
  41. Odd-Parity Rule: Method to identify interior regions by counting the number of segments crossed by a line.
  42. Non-zero Winding-Number Rule: Method to define interior regions by counting the number of times the boundary of an object “winding” around a defined point in the counter-clockwise direction.
  43. Polygon Tables: Normally consistent of three listing of geometric data which provides reference to the individual components (such as edges, vertices, and surface facets) for each object.
  44. Linear Soft-Fill Algorithm: Algorithm which help to repaint an area which was originally painted by merging a single background color with foreground color.
  45. Scan-Line Fill Algorithm: Algorithm which help to identify the same interior regions as the Odd-Parity rule.
  46. Boundary-Fill Algorithm: This algorithm will fill the interior of a region pixel by pixel until a boundary specified by a color is encountered.
  47. Flood-Fill Algorithm: This algorithm paints an area defined by different color regions by replacing a specified interior color instead of searching for a boundary color.
  48. Pitteway-Watkinson Algorithm: This algorithm is a modification to Bresenham’s algorithm. Depending of the area of overlap of the line plus the pixel, each pixel is given an intensity; therefore,  the effect of anti-aliasing is reduced due to the
  49. blurring effect which goes along the line edges.
  50. Rigid-body Transformation: Its a translation which moves objects without deforming them.

< List of Common Algoritms – Part 1 | List of Common Algorithms – Part 3 >

NOTIFICATION: These examples are provided for educational purposes. Using this code is under your own responsibility and risk. The code and information is given ‘as is’. I do not take responsibilities of how they are used.

  1. Digital Differential Analyzer (DDA): Scan-conversion line-drawing algorithm.
  2. Bresenham’s Line Algorithm: Efficient raster line-generating algorithm in which only incremental integer calculations are used.
  3. Midpoint Circle Algorithm: Raster algorithm in which each unit interval, we determine the closest pixel position that match the circle path at each step.
  4. Midpoint Ellipse Algorithm: Similar algorithm used for drawing circles. After determining the curve positions for the ellipse, all the points are shift using a fixed offset so that the ellipse is centered.
  5. Spilling Concave Polygons: Split identified concave polygon into a set of convex polygons. Another variation is to split the concave polygon into a set of triangles.
  6. Inside-Outside Test: System to identify interior areas of a plane figure by using odd-even rule (also known as odd-parity rule). Another method use is called non-zero winding-number rule.
  7. Odd-Parity Rule: Method to identify interior regions by counting the number of segments crossed by a line.
  8. Non-zero Winding-Number Rule: Method to define interior regions by counting the number of times the boundary of an object “winding” around a defined point in the counter-clockwise direction.
  9. Polygon Tables: Normally consistent of three listing of geometric data which provides reference to the individual components (such as edges, vertices, and surface facets) for each object.
  10. Linear Soft-Fill Algorithm: Algorithm which help to repaint an area which was originally painted by merging a single background color with foreground color.
  11. Scan-Line Fill Algorithm: Algorithm which help to identify the same interior regions as the Odd-Parity rule.
  12. Boundary-Fill Algorithm: This algorithm will fill the interior of a region pixel by pixel until a boundary specified by a color is encountered.
  13. Flood-Fill Algorithm: This algorithm paints an area defined by different color regions by replacing a specified interior color instead of searching for a boundary color.
  14. Pitteway-Watkinson Algorithm: This algorithm is a modification to Bresenham’s algorithm. Depending of the area of overlap of the line plus the pixel, each pixel is given an intensity; therefore,  the effect of antialiasing is reduced due to the blurring effect which goes along the line edges.
  15. Rigid-body Transformation: Its a translation which moves objects without deforming them.
  16. Cohen-Sutherland Line Clipping Algorithm: Algorithm for fast line clipping. There are chances of clipping a single line segment multiple times.
  17. Cyrus–Beck Line Clipping Algorithm: Fast parametric line-clipping algorithm.
  18. Liang-Barsky Line Clipping Algorithm: simplified and optimized version of Cyrus-Beck line clipping algorithm for rectangular clip window.
  19. Nicholl–Lee–Nicholl Line Clipping Algorithm: Fast line clipping algorithm which reduces the chances of clipping a single line segment multiple times.
  20. Fast Clipping Algorithm: Using a nine area grid, start and end positions are classified. There exist some similarities between this algorithm and  Cohen-Sutherland algorithm; however, this algorithm may have to iterate several times.
  21. O(log N) Algorithm: Vertices are classified against a given line using an implicit form.
  22. Skala Algorithm: This algorithm is use for line or line segment clipping against rectangular window and/or convex polygon.
  23. Sutherland-Hodgman Polygon Clipping Algorithm: Method for clipping a convex-polygon fill area.
  24. Weiler-Atherton Polygon Clipping Algorithm: Polygon-clipping used for clip a fill area that can be a concave polygon or convex polygon.
  25. All-or-None String-Clipping Strategy: Display only those strings that are inside the clipping window.
  26. All-or-None Character-Clipping Strategy: Display only those characters that are completed inside the clipping window.
  27. Character-Clipping Strategy: Clip the components of individual characters.
  28. Natural Cubic Splines: Used for spline curves in which two adjacent curve sections have the same first and second parametric derivatives at their common boundary.
  29. Hermite Interpolation: Interpolating piecewise cubic polynomial in which each control point is an specified tangent.
  30. Cardinal Splines: They are similar to Hermite splines; however, the user do not input the values for the endpoint tangents.
  31. Catmull-Rom Splines: Also known as Overhauser splines. They are cardinal splines in which the value of the tension is zero.
  32. Kochanek-Bartels Splines: These splines are an extension of the cardinal splines. They have two additional parameters which provide a further flexibility when adjusting the shapes of the curve sections.
  33. Bézier Spline Curves: This kind of spline can be fitted with any number of control points. The number of control points and their relative position determine the degree of the Bézier polynomial.
  34. Bézier Surfaces: Object surface designed using two sets of Bézier curves.
  35. B-Spline Curves: Similar to Bézier splines since they are generated by approximating a set of control points. However, the degree of polynomial are set independently of the number of control points plus these control points can be located over the shape of the spline.
  36. Uniform Periodic B-Spline Curves: This kind of curve is the result of a constant spacing between the knot values.
  37. Open Uniform B-Spline Curves: Special type of uniform B-Spline. With exception of the ends, the knot spacing is uniform plus the knot values are repeated a certain number of times.
  38. Non-uniform B-Spline Curves: Multiple internal knots values and unequal spacing between these knots values can be chosen.
  39. B-Spline Surfaces: By using a Cartesian product of B-Spline blending functions, we can obtain a vector point over the surface.
  40. Beta-Splines: They are formulated by imposing geometric continuity conditions over the first and second parametric derivatives.
  41. Rational Splines: The ratio of two spline functions.
  42. Horner’s Rule: Method for polynomial evaluation by performing successive factoring.
  43. Forward-Difference Calculations: By generating successive values recursively, this method can evaluate polynomial functions fast.
  44. Recursive Spline-Subdivision: Method for repeatedly division of a given curve section in half by increasing the number of control points at each division.
  45. Sweep Representation: Construction techniques use for the construction of three-dimensional objects.
  46. Constructive Solid-Geometry Methods: Also known as constructive solid geometry (CSG). Solid objects are constructed by applying the union, intersection, or difference operation of two other solid objects.

© 2011 – 2017, Alejandro G. Carlstein Ramos Mejia. All rights reserved.

Share

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload CAPTCHA.

*

Click to Insert Smiley

SmileBig SmileGrinLaughFrownBig FrownCryNeutralWinkKissRazzChicCoolAngryReally AngryConfusedQuestionThinkingPainShockYesNoLOLSillyBeautyLashesCuteShyBlushKissedIn LoveDroolGiggleSnickerHeh!SmirkWiltWeepIDKStruggleSide FrownDazedHypnotizedSweatEek!Roll EyesSarcasmDisdainSmugMoney MouthFoot in MouthShut MouthQuietShameBeat UpMeanEvil GrinGrit TeethShoutPissed OffReally PissedMad RazzDrunken RazzSickYawnSleepyDanceClapJumpHandshakeHigh FiveHug LeftHug RightKiss BlowKissingByeGo AwayCall MeOn the PhoneSecretMeetingWavingStopTime OutTalk to the HandLoserLyingDOH!Fingers CrossedWaitingSuspenseTremblePrayWorshipStarvingEatVictoryCurseAlienAngelClownCowboyCyclopsDevilDoctorFemale FighterMale FighterMohawkMusicNerdPartyPirateSkywalkerSnowmanSoldierVampireZombie KillerGhostSkeletonBunnyCatCat 2ChickChickenChicken 2CowCow 2DogDog 2DuckGoatHippoKoalaLionMonkeyMonkey 2MousePandaPigPig 2SheepSheep 2ReindeerSnailTigerTurtleBeerDrinkLiquorCoffeeCakePizzaWatermelonBowlPlateCanFemaleMaleHeartBroken HeartRoseDead RosePeaceYin YangUS FlagMoonStarSunCloudyRainThunderUmbrellaRainbowMusic NoteAirplaneCarIslandAnnouncebrbMailCellPhoneCameraFilmTVClockLampSearchCoinsComputerConsolePresentSoccerCloverPumpkinBombHammerKnifeHandcuffsPillPoopCigarette