[{"data":1,"prerenderedAt":362},["ShallowReactive",2],{"term-a\u002Falgorithm":3,"related-a\u002Falgorithm":345},{"id":4,"title":5,"acronym":6,"body":7,"category":325,"description":326,"difficulty":327,"extension":328,"letter":329,"meta":330,"navigation":331,"path":332,"related":333,"seo":339,"sitemap":340,"stem":343,"subcategory":6,"__hash__":344},"terms\u002Fterms\u002Fa\u002Falgorithm.md","Algorithm",null,{"type":8,"value":9,"toc":319},"minimark",[10,15,19,23,26,30,308,312,315],[11,12,14],"h2",{"id":13},"eli5-the-vibe-check","ELI5 — The Vibe Check",[16,17,18],"p",{},"An algorithm is just a step-by-step recipe for solving a problem. Sort a list? There is an algorithm. Find the shortest path? Algorithm. Make a sandwich? That is also an algorithm. In code, algorithms turn input into output through a defined sequence of steps. The trick is making them fast and correct.",[11,20,22],{"id":21},"real-talk","Real Talk",[16,24,25],{},"An algorithm is a finite, deterministic sequence of instructions that transforms input into output, solving a well-defined problem. Algorithms are analyzed for time complexity (how long they take) and space complexity (how much memory they use), expressed in Big O notation. Classic algorithms include sorting (QuickSort, MergeSort), searching (binary search), and graph traversal (BFS, DFS).",[11,27,29],{"id":28},"show-me-the-code","Show Me The Code",[31,32,37],"pre",{"className":33,"code":34,"language":35,"meta":36,"style":36},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F Binary search algorithm — finds a number in a sorted array:\nfunction binarySearch(arr, target) {\n  let left = 0, right = arr.length - 1;\n  while (left \u003C= right) {\n    const mid = Math.floor((left + right) \u002F 2);\n    if (arr[mid] === target) return mid;\n    if (arr[mid] \u003C target) left = mid + 1;\n    else right = mid - 1;\n  }\n  return -1; \u002F\u002F not found\n}\n\u002F\u002F O(log n) — much faster than checking every element\n","javascript","",[38,39,40,49,80,122,147,188,221,255,273,279,296,302],"code",{"__ignoreMap":36},[41,42,45],"span",{"class":43,"line":44},"line",1,[41,46,48],{"class":47},"sHwdD","\u002F\u002F Binary search algorithm — finds a number in a sorted array:\n",[41,50,52,56,60,64,68,71,74,77],{"class":43,"line":51},2,[41,53,55],{"class":54},"spNyl","function",[41,57,59],{"class":58},"s2Zo4"," binarySearch",[41,61,63],{"class":62},"sMK4o","(",[41,65,67],{"class":66},"sHdIc","arr",[41,69,70],{"class":62},",",[41,72,73],{"class":66}," target",[41,75,76],{"class":62},")",[41,78,79],{"class":62}," {\n",[41,81,83,86,90,93,97,99,102,104,107,110,113,116,119],{"class":43,"line":82},3,[41,84,85],{"class":54},"  let",[41,87,89],{"class":88},"sTEyZ"," left",[41,91,92],{"class":62}," =",[41,94,96],{"class":95},"sbssI"," 0",[41,98,70],{"class":62},[41,100,101],{"class":88}," right",[41,103,92],{"class":62},[41,105,106],{"class":88}," arr",[41,108,109],{"class":62},".",[41,111,112],{"class":88},"length",[41,114,115],{"class":62}," -",[41,117,118],{"class":95}," 1",[41,120,121],{"class":62},";\n",[41,123,125,129,133,136,139,141,144],{"class":43,"line":124},4,[41,126,128],{"class":127},"s7zQu","  while",[41,130,132],{"class":131},"swJcz"," (",[41,134,135],{"class":88},"left",[41,137,138],{"class":62}," \u003C=",[41,140,101],{"class":88},[41,142,143],{"class":131},") ",[41,145,146],{"class":62},"{\n",[41,148,150,153,156,158,161,163,166,169,171,174,176,178,181,184,186],{"class":43,"line":149},5,[41,151,152],{"class":54},"    const",[41,154,155],{"class":88}," mid",[41,157,92],{"class":62},[41,159,160],{"class":88}," Math",[41,162,109],{"class":62},[41,164,165],{"class":58},"floor",[41,167,168],{"class":131},"((",[41,170,135],{"class":88},[41,172,173],{"class":62}," +",[41,175,101],{"class":88},[41,177,143],{"class":131},[41,179,180],{"class":62},"\u002F",[41,182,183],{"class":95}," 2",[41,185,76],{"class":131},[41,187,121],{"class":62},[41,189,191,194,196,198,201,204,207,210,212,214,217,219],{"class":43,"line":190},6,[41,192,193],{"class":127},"    if",[41,195,132],{"class":131},[41,197,67],{"class":88},[41,199,200],{"class":131},"[",[41,202,203],{"class":88},"mid",[41,205,206],{"class":131},"] ",[41,208,209],{"class":62},"===",[41,211,73],{"class":88},[41,213,143],{"class":131},[41,215,216],{"class":127},"return",[41,218,155],{"class":88},[41,220,121],{"class":62},[41,222,224,226,228,230,232,234,236,239,241,243,245,247,249,251,253],{"class":43,"line":223},7,[41,225,193],{"class":127},[41,227,132],{"class":131},[41,229,67],{"class":88},[41,231,200],{"class":131},[41,233,203],{"class":88},[41,235,206],{"class":131},[41,237,238],{"class":62},"\u003C",[41,240,73],{"class":88},[41,242,143],{"class":131},[41,244,135],{"class":88},[41,246,92],{"class":62},[41,248,155],{"class":88},[41,250,173],{"class":62},[41,252,118],{"class":95},[41,254,121],{"class":62},[41,256,258,261,263,265,267,269,271],{"class":43,"line":257},8,[41,259,260],{"class":127},"    else",[41,262,101],{"class":88},[41,264,92],{"class":62},[41,266,155],{"class":88},[41,268,115],{"class":62},[41,270,118],{"class":95},[41,272,121],{"class":62},[41,274,276],{"class":43,"line":275},9,[41,277,278],{"class":62},"  }\n",[41,280,282,285,287,290,293],{"class":43,"line":281},10,[41,283,284],{"class":127},"  return",[41,286,115],{"class":62},[41,288,289],{"class":95},"1",[41,291,292],{"class":62},";",[41,294,295],{"class":47}," \u002F\u002F not found\n",[41,297,299],{"class":43,"line":298},11,[41,300,301],{"class":62},"}\n",[41,303,305],{"class":43,"line":304},12,[41,306,307],{"class":47},"\u002F\u002F O(log n) — much faster than checking every element\n",[11,309,311],{"id":310},"when-youll-hear-this","When You'll Hear This",[16,313,314],{},"\"Which algorithm are you using to sort that?\" \u002F \"The algorithm runs in O(n²) — too slow for large datasets.\"",[316,317,318],"style",{},"html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":36,"searchDepth":51,"depth":51,"links":320},[321,322,323,324],{"id":13,"depth":51,"text":14},{"id":21,"depth":51,"text":22},{"id":28,"depth":51,"text":29},{"id":310,"depth":51,"text":311},"general","An algorithm is just a step-by-step recipe for solving a problem. Sort a list? There is an algorithm. Find the shortest path? Algorithm. Make a sandwich?","beginner","md","a",{},true,"\u002Fterms\u002Fa\u002Falgorithm",[334,335,336,337,338],"Data Structure","Big O","Time Complexity","Recursion","Pseudocode",{"title":5,"description":326},{"changefreq":341,"priority":342},"weekly",0.7,"terms\u002Fa\u002Falgorithm","80PLX9tPEz8GuXejIqBhwj4MJYxoDmoIyibOzMX4wZQ",[346,350,353,356,359],{"title":335,"path":347,"acronym":6,"category":325,"difficulty":348,"description":349},"\u002Fterms\u002Fb\u002Fbig-o","intermediate","Big O notation is how we describe how fast (or slow) an algorithm gets as the input grows. O(1) means instant no matter the size.",{"title":334,"path":351,"acronym":6,"category":325,"difficulty":327,"description":352},"\u002Fterms\u002Fd\u002Fdata-structure","A data structure is a way of organizing information in your code so it is easy to use and fast to access.",{"title":338,"path":354,"acronym":6,"category":325,"difficulty":327,"description":355},"\u002Fterms\u002Fp\u002Fpseudocode","Pseudocode is fake code written in plain English that describes what your real code should do, without worrying about syntax.",{"title":337,"path":357,"acronym":6,"category":325,"difficulty":348,"description":358},"\u002Fterms\u002Fr\u002Frecursion","Recursion is when a function calls itself to solve a smaller version of the same problem, like a set of Russian nesting dolls.",{"title":336,"path":360,"acronym":6,"category":325,"difficulty":348,"description":361},"\u002Fterms\u002Ft\u002Ftime-complexity","Time complexity is how the time your algorithm takes grows as the input gets bigger. Does it take twice as long when you double the data? Ten times longer?",1776518254954]