[{"data":1,"prerenderedAt":956},["ShallowReactive",2],{"blog-recherche-lineaire":3},{"id":4,"title":5,"body":6,"coverImage":942,"description":943,"extension":944,"meta":945,"navigation":362,"path":946,"published":362,"publishedAt":947,"readTime":948,"seo":949,"stem":950,"tags":951,"__hash__":955},"blog\u002Fblog\u002Frecherche-lineaire.md","La recherche linéaire expliquée simplement",{"type":7,"value":8,"toc":898},"minimark",[9,14,19,23,26,29,33,36,55,59,62,119,125,128,132,135,150,154,160,191,196,205,208,212,218,221,225,231,234,238,244,247,251,385,389,403,407,491,495,498,501,512,516,520,538,543,547,568,573,577,605,609,613,617,628,632,643,647,651,654,661,667,671,674,678,681,684,698,702,706,709,713,716,720,730,734,741,745,749,839,843,887,891,894],[10,11,13],"h1",{"id":12},"la-recherche-linéaire","La recherche linéaire",[15,16,18],"h2",{"id":17},"introduction","Introduction",[20,21,22],"p",{},"La recherche linéaire est l'algorithme le plus simple pour trouver une valeur dans une liste.",[20,24,25],{},"Le principe est très direct : on parcourt les éléments un par un jusqu'à trouver la valeur recherchée.",[20,27,28],{},"C'est une excellente base pour comprendre la logique de recherche.",[15,30,32],{"id":31},"ce-que-vous-allez-apprendre","Ce que vous allez apprendre",[20,34,35],{},"À la fin de ce tutoriel, vous saurez :",[37,38,39,43,46,49,52],"ul",{},[40,41,42],"li",{},"comprendre le principe de la recherche linéaire ;",[40,44,45],{},"l'implémenter en JavaScript ;",[40,47,48],{},"suivre son exécution étape par étape ;",[40,50,51],{},"comprendre quand elle est utile ;",[40,53,54],{},"comparer cette méthode à la recherche dichotomique.",[15,56,58],{"id":57},"_1-le-problème-de-départ","1. Le problème de départ",[20,60,61],{},"Imaginons cette liste :",[63,64,69],"pre",{"className":65,"code":66,"language":67,"meta":68,"style":68},"language-js shiki shiki-themes github-light github-dark","const numbers = [8, 3, 12, 5, 20];\n","js","",[70,71,72],"code",{"__ignoreMap":68},[73,74,77,81,85,88,92,95,98,101,103,106,108,111,113,116],"span",{"class":75,"line":76},"line",1,[73,78,80],{"class":79},"szBVR","const",[73,82,84],{"class":83},"sj4cs"," numbers",[73,86,87],{"class":79}," =",[73,89,91],{"class":90},"sVt8B"," [",[73,93,94],{"class":83},"8",[73,96,97],{"class":90},", ",[73,99,100],{"class":83},"3",[73,102,97],{"class":90},[73,104,105],{"class":83},"12",[73,107,97],{"class":90},[73,109,110],{"class":83},"5",[73,112,97],{"class":90},[73,114,115],{"class":83},"20",[73,117,118],{"class":90},"];\n",[20,120,121,122,124],{},"Si vous cherchez ",[70,123,110],{},", vous pouvez commencer au début et vérifier chaque élément.",[20,126,127],{},"C'est exactement le rôle de la recherche linéaire.",[15,129,131],{"id":130},"_2-lidée-de-la-recherche-linéaire","2. L'idée de la recherche linéaire",[20,133,134],{},"La logique est la suivante :",[136,137,138,141,144,147],"ol",{},[40,139,140],{},"regarder le premier élément ;",[40,142,143],{},"comparer avec la valeur cherchée ;",[40,145,146],{},"si ce n'est pas bon, passer à l'élément suivant ;",[40,148,149],{},"recommencer jusqu'à trouver la valeur ou atteindre la fin.",[15,151,153],{"id":152},"_3-exemple-pas-à-pas","3. Exemple pas à pas",[20,155,156,157,159],{},"Cherchons ",[70,158,110],{}," dans la liste suivante :",[63,161,163],{"className":65,"code":162,"language":67,"meta":68,"style":68},"[8, 3, 12, 5, 20]\n",[70,164,165],{"__ignoreMap":68},[73,166,167,170,172,174,176,178,180,182,184,186,188],{"class":75,"line":76},[73,168,169],{"class":90},"[",[73,171,94],{"class":83},[73,173,97],{"class":90},[73,175,100],{"class":83},[73,177,97],{"class":90},[73,179,105],{"class":83},[73,181,97],{"class":90},[73,183,110],{"class":83},[73,185,97],{"class":90},[73,187,115],{"class":83},[73,189,190],{"class":90},"]\n",[192,193,195],"h3",{"id":194},"étape-1","Étape 1",[20,197,198,199,201,202,204],{},"Comparer ",[70,200,94],{}," avec ",[70,203,110],{},".",[20,206,207],{},"Ce n'est pas la bonne valeur.",[192,209,211],{"id":210},"étape-2","Étape 2",[20,213,198,214,201,216,204],{},[70,215,100],{},[70,217,110],{},[20,219,220],{},"Ce n'est toujours pas la bonne valeur.",[192,222,224],{"id":223},"étape-3","Étape 3",[20,226,198,227,201,229,204],{},[70,228,105],{},[70,230,110],{},[20,232,233],{},"Toujours pas.",[192,235,237],{"id":236},"étape-4","Étape 4",[20,239,198,240,201,242,204],{},[70,241,110],{},[70,243,110],{},[20,245,246],{},"On a trouvé la valeur.",[15,248,250],{"id":249},"_4-version-javascript","4. Version JavaScript",[63,252,254],{"className":65,"code":253,"language":67,"meta":68,"style":68},"function linearSearch(array, target) {\n  for (let i = 0; i \u003C array.length; i++) {\n    if (array[i] === target) {\n      return i;\n    }\n  }\n\n  return -1;\n}\n",[70,255,256,280,321,336,345,351,357,364,379],{"__ignoreMap":68},[73,257,258,261,265,268,272,274,277],{"class":75,"line":76},[73,259,260],{"class":79},"function",[73,262,264],{"class":263},"sScJk"," linearSearch",[73,266,267],{"class":90},"(",[73,269,271],{"class":270},"s4XuR","array",[73,273,97],{"class":90},[73,275,276],{"class":270},"target",[73,278,279],{"class":90},") {\n",[73,281,283,286,289,292,295,298,301,304,307,310,313,316,319],{"class":75,"line":282},2,[73,284,285],{"class":79},"  for",[73,287,288],{"class":90}," (",[73,290,291],{"class":79},"let",[73,293,294],{"class":90}," i ",[73,296,297],{"class":79},"=",[73,299,300],{"class":83}," 0",[73,302,303],{"class":90},"; i ",[73,305,306],{"class":79},"\u003C",[73,308,309],{"class":90}," array.",[73,311,312],{"class":83},"length",[73,314,315],{"class":90},"; i",[73,317,318],{"class":79},"++",[73,320,279],{"class":90},[73,322,324,327,330,333],{"class":75,"line":323},3,[73,325,326],{"class":79},"    if",[73,328,329],{"class":90}," (array[i] ",[73,331,332],{"class":79},"===",[73,334,335],{"class":90}," target) {\n",[73,337,339,342],{"class":75,"line":338},4,[73,340,341],{"class":79},"      return",[73,343,344],{"class":90}," i;\n",[73,346,348],{"class":75,"line":347},5,[73,349,350],{"class":90},"    }\n",[73,352,354],{"class":75,"line":353},6,[73,355,356],{"class":90},"  }\n",[73,358,360],{"class":75,"line":359},7,[73,361,363],{"emptyLinePlaceholder":362},true,"\n",[73,365,367,370,373,376],{"class":75,"line":366},8,[73,368,369],{"class":79},"  return",[73,371,372],{"class":79}," -",[73,374,375],{"class":83},"1",[73,377,378],{"class":90},";\n",[73,380,382],{"class":75,"line":381},9,[73,383,384],{"class":90},"}\n",[192,386,388],{"id":387},"explication","Explication",[37,390,391,394,397],{},[40,392,393],{},"la boucle parcourt toute la liste ;",[40,395,396],{},"dès qu'on trouve la valeur, on retourne l'index ;",[40,398,399,400,204],{},"si rien n'est trouvé, on retourne ",[70,401,402],{},"-1",[15,404,406],{"id":405},"_5-exemple-dutilisation","5. Exemple d'utilisation",[63,408,410],{"className":65,"code":409,"language":67,"meta":68,"style":68},"const numbers = [8, 3, 12, 5, 20];\n\nconsole.log(linearSearch(numbers, 5)); \u002F\u002F 3\nconsole.log(linearSearch(numbers, 99)); \u002F\u002F -1\n",[70,411,412,442,446,471],{"__ignoreMap":68},[73,413,414,416,418,420,422,424,426,428,430,432,434,436,438,440],{"class":75,"line":76},[73,415,80],{"class":79},[73,417,84],{"class":83},[73,419,87],{"class":79},[73,421,91],{"class":90},[73,423,94],{"class":83},[73,425,97],{"class":90},[73,427,100],{"class":83},[73,429,97],{"class":90},[73,431,105],{"class":83},[73,433,97],{"class":90},[73,435,110],{"class":83},[73,437,97],{"class":90},[73,439,115],{"class":83},[73,441,118],{"class":90},[73,443,444],{"class":75,"line":282},[73,445,363],{"emptyLinePlaceholder":362},[73,447,448,451,454,456,459,462,464,467],{"class":75,"line":323},[73,449,450],{"class":90},"console.",[73,452,453],{"class":263},"log",[73,455,267],{"class":90},[73,457,458],{"class":263},"linearSearch",[73,460,461],{"class":90},"(numbers, ",[73,463,110],{"class":83},[73,465,466],{"class":90},")); ",[73,468,470],{"class":469},"sJ8bj","\u002F\u002F 3\n",[73,472,473,475,477,479,481,483,486,488],{"class":75,"line":338},[73,474,450],{"class":90},[73,476,453],{"class":263},[73,478,267],{"class":90},[73,480,458],{"class":263},[73,482,461],{"class":90},[73,484,485],{"class":83},"99",[73,487,466],{"class":90},[73,489,490],{"class":469},"\u002F\u002F -1\n",[15,492,494],{"id":493},"_6-pourquoi-cet-algorithme-est-utile","6. Pourquoi cet algorithme est utile",[20,496,497],{},"La recherche linéaire est simple et fonctionne sur n'importe quelle liste, triée ou non.",[20,499,500],{},"Elle est souvent utilisée quand :",[37,502,503,506,509],{},[40,504,505],{},"la liste est petite ;",[40,507,508],{},"les données ne sont pas triées ;",[40,510,511],{},"on veut une solution simple et lisible.",[15,513,515],{"id":514},"_7-les-cas-limites","7. Les cas limites",[192,517,519],{"id":518},"liste-vide","Liste vide",[63,521,523],{"className":65,"code":522,"language":67,"meta":68,"style":68},"linearSearch([], 10);\n",[70,524,525],{"__ignoreMap":68},[73,526,527,529,532,535],{"class":75,"line":76},[73,528,458],{"class":263},[73,530,531],{"class":90},"([], ",[73,533,534],{"class":83},"10",[73,536,537],{"class":90},");\n",[20,539,540,541],{},"Résultat : ",[70,542,402],{},[192,544,546],{"id":545},"un-seul-élément","Un seul élément",[63,548,550],{"className":65,"code":549,"language":67,"meta":68,"style":68},"linearSearch([10], 10);\n",[70,551,552],{"__ignoreMap":68},[73,553,554,556,559,561,564,566],{"class":75,"line":76},[73,555,458],{"class":263},[73,557,558],{"class":90},"([",[73,560,534],{"class":83},[73,562,563],{"class":90},"], ",[73,565,534],{"class":83},[73,567,537],{"class":90},[20,569,540,570],{},[70,571,572],{},"0",[192,574,576],{"id":575},"valeur-absente","Valeur absente",[63,578,580],{"className":65,"code":579,"language":67,"meta":68,"style":68},"linearSearch([1, 2, 3], 8);\n",[70,581,582],{"__ignoreMap":68},[73,583,584,586,588,590,592,595,597,599,601,603],{"class":75,"line":76},[73,585,458],{"class":263},[73,587,558],{"class":90},[73,589,375],{"class":83},[73,591,97],{"class":90},[73,593,594],{"class":83},"2",[73,596,97],{"class":90},[73,598,100],{"class":83},[73,600,563],{"class":90},[73,602,94],{"class":83},[73,604,537],{"class":90},[20,606,540,607],{},[70,608,402],{},[15,610,612],{"id":611},"_8-recherche-linéaire-ou-dichotomique","8. Recherche linéaire ou dichotomique ?",[192,614,616],{"id":615},"recherche-linéaire","Recherche linéaire",[37,618,619,622,625],{},[40,620,621],{},"fonctionne sur n'importe quelle liste ;",[40,623,624],{},"simple à écrire ;",[40,626,627],{},"parcourt tout élément potentiel.",[192,629,631],{"id":630},"recherche-dichotomique","Recherche dichotomique",[37,633,634,637,640],{},[40,635,636],{},"nécessite une liste triée ;",[40,638,639],{},"est plus rapide sur de grandes listes ;",[40,641,642],{},"coupe la recherche en deux à chaque étape.",[15,644,646],{"id":645},"_9-erreurs-fréquentes","9. Erreurs fréquentes",[192,648,650],{"id":649},"oublier-le-cas-non-trouvé","Oublier le cas non trouvé",[20,652,653],{},"La fonction doit retourner quelque chose de clair si l'élément n'existe pas.",[192,655,657,658],{"id":656},"comparer-avec","Comparer avec ",[70,659,660],{},"==",[20,662,663,664,666],{},"Préférez ",[70,665,332],{}," pour éviter les conversions implicites inattendues.",[192,668,670],{"id":669},"ne-pas-parcourir-toute-la-liste","Ne pas parcourir toute la liste",[20,672,673],{},"Il faut bien vérifier chaque élément jusqu'à trouver la valeur ou atteindre la fin.",[15,675,677],{"id":676},"_10-résumé","10. Résumé",[20,679,680],{},"La recherche linéaire est la méthode la plus simple pour trouver une valeur dans une liste.",[20,682,683],{},"À retenir :",[37,685,686,689,692,695],{},[40,687,688],{},"elle parcourt les éléments un par un ;",[40,690,691],{},"elle fonctionne sur les listes triées ou non ;",[40,693,694],{},"elle est simple mais moins efficace sur de grandes données ;",[40,696,697],{},"elle constitue une base essentielle avant d'apprendre la recherche dichotomique.",[15,699,701],{"id":700},"exercices","Exercices",[192,703,705],{"id":704},"exercice-1","Exercice 1",[20,707,708],{},"Implémentez la recherche linéaire en JavaScript.",[192,710,712],{"id":711},"exercice-2","Exercice 2",[20,714,715],{},"Testez votre fonction avec une valeur présente et une valeur absente.",[192,717,719],{"id":718},"exercice-3","Exercice 3",[20,721,722,723,726,727,204],{},"Modifiez la fonction pour qu'elle retourne ",[70,724,725],{},"true"," ou ",[70,728,729],{},"false",[192,731,733],{"id":732},"exercice-4","Exercice 4",[20,735,736,737,740],{},"Ajoutez un ",[70,738,739],{},"console.log"," à chaque étape pour suivre la progression.",[15,742,744],{"id":743},"corrigés","Corrigés",[192,746,748],{"id":747},"correction-exercice-1","Correction exercice 1",[63,750,751],{"className":65,"code":253,"language":67,"meta":68,"style":68},[70,752,753,769,797,807,813,817,821,825,835],{"__ignoreMap":68},[73,754,755,757,759,761,763,765,767],{"class":75,"line":76},[73,756,260],{"class":79},[73,758,264],{"class":263},[73,760,267],{"class":90},[73,762,271],{"class":270},[73,764,97],{"class":90},[73,766,276],{"class":270},[73,768,279],{"class":90},[73,770,771,773,775,777,779,781,783,785,787,789,791,793,795],{"class":75,"line":282},[73,772,285],{"class":79},[73,774,288],{"class":90},[73,776,291],{"class":79},[73,778,294],{"class":90},[73,780,297],{"class":79},[73,782,300],{"class":83},[73,784,303],{"class":90},[73,786,306],{"class":79},[73,788,309],{"class":90},[73,790,312],{"class":83},[73,792,315],{"class":90},[73,794,318],{"class":79},[73,796,279],{"class":90},[73,798,799,801,803,805],{"class":75,"line":323},[73,800,326],{"class":79},[73,802,329],{"class":90},[73,804,332],{"class":79},[73,806,335],{"class":90},[73,808,809,811],{"class":75,"line":338},[73,810,341],{"class":79},[73,812,344],{"class":90},[73,814,815],{"class":75,"line":347},[73,816,350],{"class":90},[73,818,819],{"class":75,"line":353},[73,820,356],{"class":90},[73,822,823],{"class":75,"line":359},[73,824,363],{"emptyLinePlaceholder":362},[73,826,827,829,831,833],{"class":75,"line":366},[73,828,369],{"class":79},[73,830,372],{"class":79},[73,832,375],{"class":83},[73,834,378],{"class":90},[73,836,837],{"class":75,"line":381},[73,838,384],{"class":90},[192,840,842],{"id":841},"correction-exercice-3","Correction exercice 3",[63,844,846],{"className":65,"code":845,"language":67,"meta":68,"style":68},"function contains(array, target) {\n  return linearSearch(array, target) !== -1;\n}\n",[70,847,848,865,883],{"__ignoreMap":68},[73,849,850,852,855,857,859,861,863],{"class":75,"line":76},[73,851,260],{"class":79},[73,853,854],{"class":263}," contains",[73,856,267],{"class":90},[73,858,271],{"class":270},[73,860,97],{"class":90},[73,862,276],{"class":270},[73,864,279],{"class":90},[73,866,867,869,871,874,877,879,881],{"class":75,"line":282},[73,868,369],{"class":79},[73,870,264],{"class":263},[73,872,873],{"class":90},"(array, target) ",[73,875,876],{"class":79},"!==",[73,878,372],{"class":79},[73,880,375],{"class":83},[73,882,378],{"class":90},[73,884,885],{"class":75,"line":323},[73,886,384],{"class":90},[15,888,890],{"id":889},"prochaine-étape","Prochaine étape",[20,892,893],{},"Une fois la recherche linéaire comprise, la recherche dichotomique devient beaucoup plus simple à apprendre.",[895,896,897],"style",{},"html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}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);}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .s4XuR, html code.shiki .s4XuR{--shiki-default:#E36209;--shiki-dark:#FFAB70}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}",{"title":68,"searchDepth":282,"depth":282,"links":899},[900,901,902,903,904,910,913,914,915,920,924,930,931,937,941],{"id":17,"depth":282,"text":18},{"id":31,"depth":282,"text":32},{"id":57,"depth":282,"text":58},{"id":130,"depth":282,"text":131},{"id":152,"depth":282,"text":153,"children":905},[906,907,908,909],{"id":194,"depth":323,"text":195},{"id":210,"depth":323,"text":211},{"id":223,"depth":323,"text":224},{"id":236,"depth":323,"text":237},{"id":249,"depth":282,"text":250,"children":911},[912],{"id":387,"depth":323,"text":388},{"id":405,"depth":282,"text":406},{"id":493,"depth":282,"text":494},{"id":514,"depth":282,"text":515,"children":916},[917,918,919],{"id":518,"depth":323,"text":519},{"id":545,"depth":323,"text":546},{"id":575,"depth":323,"text":576},{"id":611,"depth":282,"text":612,"children":921},[922,923],{"id":615,"depth":323,"text":616},{"id":630,"depth":323,"text":631},{"id":645,"depth":282,"text":646,"children":925},[926,927,929],{"id":649,"depth":323,"text":650},{"id":656,"depth":323,"text":928},"Comparer avec ==",{"id":669,"depth":323,"text":670},{"id":676,"depth":282,"text":677},{"id":700,"depth":282,"text":701,"children":932},[933,934,935,936],{"id":704,"depth":323,"text":705},{"id":711,"depth":323,"text":712},{"id":718,"depth":323,"text":719},{"id":732,"depth":323,"text":733},{"id":743,"depth":282,"text":744,"children":938},[939,940],{"id":747,"depth":323,"text":748},{"id":841,"depth":323,"text":842},{"id":889,"depth":282,"text":890},null,"Un tutoriel complet pour comprendre la recherche linéaire, suivre son fonctionnement pas à pas et l'implémenter en JavaScript.","md",{},"\u002Fblog\u002Frecherche-lineaire","2026-06-09",11,{"title":5,"description":943},"blog\u002Frecherche-lineaire",[952,953,954],"Algorithmes","Recherche","JavaScript","ZtRCMTMUvbP4_BuSatGhDAwBMbTnjD5VwhPPyQOJYKA",1788219651272]