Maison >interface Web >js tutoriel >Présentation de la méthode de dichotomie dans js et de l'exemple de code pour la déduplication
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title></title> </head> <body> </body> <script type="text/javascript"> var arr =[1,2,3,4,5,6,7,8,9,0,8,5,5,4,3]; //创建一个数组 function findInArr(arr,n){ //循环数组中的每一项如果它的每一个i项与n相等就返回继续执行 for (var i=0;i<arr.length;i++){ if (arr[i] == n){ return true; } } return false; } function removeDup(arr,s,e){ // 判断这个数组,的开始顺序,和这个数组是不是首项和尾项相等 if (s>e) { return false; } else if(s==e){ return [arr[s]]; } // 将数组进行二分,找到中间项,将数组分为两部分 var c= Math.floor((s+e)/2); var l = removeDup(arr,s,c); var r = removeDup(arr,c + 1,e); for (var i=0;i< r.length; i++) { if (!findInArr(l,r[i])) { l.push(r[i]) } } return l; } console.log(removeDup(arr,0,arr.length-1)) </script> </html>
Les algorithmes sont une chose merveilleuse et j'espère que nous pourrons communiquer davantage.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!