# Internship Topics – Data Structures & Algorithms - Aug-2024

34 – Variable Length Array
46 – Vlist
48 – Difference List
66 – Order Statistic Tree
68 – Pagoda
76 – Scapegoat Tree
77 – T-Tree
81 – Prefix B+-Tree
82 – B Sharp Tree
83 – Bit Tree
84 – Dancing Tree
87 – Bx Tree
88 – Fusion Tree
89 – AList
90 – Queap
93 – And-Or Tree
94 – Fenwick Tree
95 – Rose Tree
96 – Exponential Tree
97 – (a,b)- Tree
101 – SPQR Tree
102 – Spaghetti Stack
104 – Segment Tree
105 – Interval Tree
106 – Range Tree
108 – Rapidly Exploring Random Tree
110 – Bounding Interval Hierarchy
112 – Implicit KD Tree
113 – Min/Max KD Tree
114 – BK Tree
115 – VP-Tree
116 – M-Tree
119 – Octree
120 – Cover Tree
121 – Metric Tree
122 – X-Tree
123 – Linear Octree
124 – Z-Order
125 – Hilbert R-Tree
126 – R*-Tree
127 – R+-Tree
128 – R-Tree
129 – UB Tree
130 – Abstract Syntax Tree
131 – Parse Tree
132 – Log-Structured Merge-Tree
134 – Finger Tree
136 – Alternating Decision Tree
138 – Expectiminimax Tree
139 – Steiner Tree
144 – AF-Heap
145 – Leonardo Heap
146 – 2-3 Heap
147 – Brodal Queue
150 – Soft Heap
154 – Beap
158 – Ctrie
161 – Compressed Suffix Array
162 – Judy Array
163 – B-Trie
164 – Generalised Suffix Tree
165 – FM- Index
178 – Hash Trie
179 – Prefix Hash Tree
181 – Rolling Hash
182 – Koorde
183 – Quotient Filter
184 – Bloom Filter
185 – Count- Min Sketch
187 – Dynamic Perfect Hash Table
188 – Hash Array Mapped Trie
198 – Propositional Directed Acyclic Graph
201 – Graph Structured Stack
202 – Scene Graph
204 – Zero Suppressed Decision Diagram
205 – And-Inverter Graph
229 – Library Sort
230 – Patience Sort
231 – Smoothsort
237 – Block Sort
239 – Unshuffle Sort
244 – In-place MSD Radix Sort
248 – Bucket Sort (Integer Keys)
250 – Spaghetti Sort
254 – Postman Sort
256 – Flashsort
257 – Burstsort
258 – Sample Sort
260 – Damerau-Levenshtein Distance
261 – Dice’s Coefficient
263 – Jaro-Winkler Distance
265 – Aho-Corasick Algorithm
266 – Apostolico-Crochemore Algorithm
267 – Apostolico-Giancarlo Algorithm
269 – Morris-Prat Algorithm
271 – Bitap Algorithm
272 – Boyer Moore Algorithm
273 – Finite State Automaton based Matching
274 – Commentz-Walter Algorithm
275 – Boyer-Moore-Horspool Algorithm
276 – Raita Algorithm
277 – Zhu-Takaoka Algorithm
278 – Shift- Or Algorithm
279 – Simon Algorithm
280 – Colussi Algorithm
281 – Reverse Colussi Algorithm
282 – Galil-Giancarlo Algorithm
283 – Turbo BM Algorithm
284 – Horspool Algorithm
286 – Tuned Boyer-Moore Algorithm
287 – Berry-Ravindran Algorithm
288 – Smith Algorithm
289 – Reverse Factor Algorithm
290 – Turbo Reverse Factor Algorithm
291 – Forward Dawg Matching Algorithm
292 – Backward Nondeterministic Dawg Matching Algorithm
293 – Backward Oracle Matching Algorithm
294 – Galil-Seiferas Algorithm
295 – Two Way Algorithm
296 – String Matching on Ordered Alphabets Algorithm
297 – Optimal Mismatch Algorithm
298 – Maximal Shift Algorithm
299 – Skip Search Algorithm
300 – KMP Skip Search Algorithm
301 – Alpha Skip Search Algorithm
302 – Bit Parallel String Matching
303 – Z Algorithm
305 – Extended Euclid’s Algorithm
306 – Euler’s Totient Function
307 – Chinese Remainder Theorem
308 – Modular Multiplicative Inverse
310 – Cannon’s Algorithm
312 – Freivalds’ Algorithm
313 – Matrix Exponentiation
314 – Segmented Sieve
315 – Miller-Rabin Randomized Primality Test
316 – Lucas Primality Test
317 – Fermat Primality Test
318 – Solovay-Strassen Primality Test
319 – Frobenius Pseudoprimality Test
320 – Pocklington Primality Test
321 – Fermat’s Little Theorem
322 – AKS Primality Test
323 – Agarwal-Biswas Primality Test
324 – Baillie-PSW Primality Test
325 – Sieve of Erastosthenes
326 – Sieve of Atkin
327 – Sieve of Sundaram
333 – Brent’s algorithm
334 – Floyd’s cycle-finding algorithm
335 – Congruence of Squares
336 – Dixon’s Algorithm
337 – Pollard’s p-1 Algorithm
338 – Pollard’s rho Algorithm
340 – Shor’s Algorithm
341 – General Number Field Sieve
342 – Special Number Field Sieve
343 – Fermat’s Factorization Method
344 – Trial Division
345 – Karatsuba Algorithm
346 – Schönhage-Strassen Algorithm
347 – Toom-Cook Multiplication
348 – Fürer’s algorithm
351 – Burnside’s Lemma
352 – Line-Point Distance
355 – Sweep Line
356 – Segment Intersection
357 – Graham’s Scan
358 – Jarvis’s March
361 – Kirkpatrick-Seidel Algorithm
362 – Gilbert-Johnson-Keerthi Distance Algorithm
363 – Jump-and-Walk Algorithm
364 – Shamos Hoey Algorithm
365 – Bentley-Ottmann Algorithm
366 – Shoelace Algorithm
367 – Point in Polygon Problem
368 – Ray Casting Algorithm
369 – Winding Number Algorithm
374 – Iterative Deepening
375 – A* Algorithm
376 – Iterative Deepening A* Algorithm
377 – B* Algorithm
378 – D* Algorithm
379 – Beam Search
380 – Beam Stack Search
381 – Fringe Search
382 – Bidirectional Search
383 – Depth Limited Search
384 – Uniform Cost Search
385 – Hill Climbing Algorithm
386 – Jump Point Search
391 – Borůvka’s Algorithm
392 – Delaunay Triangulation for MST
393 – Edmonds’ Algorithm
394 – Reverse-delete Algorithm
398 – Johnson’s Algorithm
399 – Viterbi Algorithm
400 – Gabow’s Algorithm
401 – Simplified Memory Bounded A*
402 – Shortest Path Faster Algorithm
404 – Ford-Fulkerson Algorithm
405 – Edmonds-Karp Algorithm
406 – Dinic’s Algorithm
407 – Push-relabel Algorithm
408 – Minimum-cost Flow Problem
409 – Network Simplex Algorithm
410 – Matching
411 – Augmenting Paths Algorithm
412 – Hopcroft-Karp Algorithm
413 – FKT Algorithm
414 – Blossom Algorithm
416 – Gale-Shapley Algorithm
417 – Tutte Matrix
419 – Planarity
420 – Hopcroft-Tarjan Planarity Algorithm
421 – Kuratowski’s Theorem
422 – Wagner’s Theorem
423 – Euler’s Relation
424 – Booth and Leuker Planarity Algorithm
425 – Lempel-Even-Cederbaum Planarity Method
427 – Kosaraju’s Algorithm
428 – Tarjan’s Algorithm
429 – Path-based Strong Component Algorithm
430 – Cut Vertices
432 – Minimum k-Cut
433 – Karger’s Algorithm
434 – Vertex Coloring
435 – Chromatic Number
436 – Edge Coloring
437 – Misra and Gries Edge Coloring Algorithm
438 – Four-Color Theorem
439 – Chaitin’s Algorithm
440 – Lowest Common Ancestors
441 – Tarjan’s Off-line Lowest Common Ancestors Algorithm
442 – Transitive Closure
447 – Eulerian Tour
448 – Fleury’s Algorithm
449 – Hierholzer’s Algorithm
452 – Metric Traveling Salesman Problem
453 – Euclidean Traveling Salesman Problem
454 – Asymmetric Traveling Salesman Problem
455 – Held Karp Algorithm
456 – Christofides Algorithm
457 – Clique Problem
458 – Bron-Kerbosch Algorithm
462 – Catalan Numbers
480 – Ackermann Function
482 – Activity Selection Problem
485 – Sudoku
488 – Knight’s Tour
504 – Hirschberg’s Algorithm
507 – Bitonic Euclidean Travelling Salesman Problem
517 – Great Cipher
521 – Gronsfeld Cipher
522 – Beaufort Cipher
528 – Trithemius Cipher
529 – Alberti’s Cipher
531 – Running Key Cipher
532 – Bifid Cipher
533 – Trifid Cipher
534 – Four-square Cipher
535 – Book Cipher
536 – Beale Cipher
538 – Tap Code
542 – RSA Algorithm
543 – Bernstein Hashing
544 – Fowler-Noll-Vo Hashing
545 – Jenkins Hashing
546 – Pearson Hashing
547 – Zobrist Hashing
548 – Coalesced Hashing
549 – Hopscotch Hashing
550 – Murmur Hashing
551 – City Hashing
552 – MD2 Algorithm
553 – MD4 Algorithm
554 – MD5 Algorithm
555 – MD6 Algorithm
556 – SHA-0 Algorithm
557 – SHA-1 Algorithm
558 – SHA-2 Algorithm
559 – SHA-3 Algorithm
560 – SHA-224 Algorithm
561 – SHA-256 Algorithm
562 – SHA-384 Algorithm
563 – SHA-512 Algorithm
564 – HMAC
565 – RIPEMD-160
566 – RTR0
567 – Tiger
568 – Whirlpool
569 – Checksum Method
570 – Fletcher’s Checksum
571 – Frame Check Sequence
572 – SYSV Checksum
573 – BSD Checksum
574 – Rolling Checksum
578 – Boolean Satisfiability Problem
580 – Subgraph Isomorphism Problem
582 – Vertex Cover Problem
583 – Independent Set Problem
584 – Dominating Set Problem
585 – Longest Path Problem
586 – Circuit Satisfiability Problem
587 – 0-1 Integer Programming Problem
589 – Longest Simple Cycle Problem
591 – Not Recently Used Algorithm (NRU)
593 – Second-chance Algorithm
594 – Least Recently Used Algorithm (LRU)
595 – Random Page Replacement Algorithm
596 – Not Frequently Used Algorithm (NFU)
597 – Aging Algorithm
598 – DSW Algorithm
599 – Assignment Problem
600 – Hungarian Algorithm
601 – Simplex Algorithm
602 – Suurballe’s Algorithm
603 – MO’s Algorithm
605 – Flooding Algorithm
606 – Ukkonen’s Algorithm
608 – Gaussian Elimination
609 – Meet in the Middle
610 – Union-find Algorithm to Detect Cycle in a Graph