프런트 엔드의 몇 가지 일반적인 JS 정렬 코드
JS를 사용할 때 정렬 문제가 자주 발생합니다. 이 기사에서는 JS 정렬 문제에 대해 자세히 설명합니다.
1. 버블 정렬
function bubbleSort(arr){ var i = 0, j = 0; for(i=1; i<arr.length; i++){ for(j=0; j<=arr.length-i; j++){ var temp = 0; // ">" 从小到大排序 // "<" 从大到小排序 if(arr[j] > arr[j+1]){ temp = arr[j]; arr[j] = arr[j+1]; arr[j+1] = temp; } } } return arr; }
2. 빠른 정렬
function quickSort(arr,l,r){ if(l < r){ var i = l, j = r, x = arr[i]; while(i<j){ while(i<j && arr[j]>x) j--; if(i<j) //这里用i++,被换过来的必然比x小,赋值后直接让i自加,不用再比较,可以提高效率 arr[i++] = arr[j]; while(i<j && arr[i]<x) i++; if(i<j) //这里用j--,被换过来的必然比x大,赋值后直接让j自减,不用再比较,可以提高效率 arr[j--] = arr[i]; } arr[i] = x; quickSort(arr, l, i-1); quickSort(arr, i+1, r); } }
3. 양방향 병합
function merge(left, right) { var result = [], il = 0, ir = 0; while (il < left.length && ir < right.length) { if (left[il] < right[ir]) { result.push(left[il++]); } else { result.push(right[ir++]); } } while(left[il]){ result.push(left[il++]); } while(right[ir]){ result.push(right[ir++]); } return result; }
문자열 연산
1. 문자열 뒤집기
function palindrome(str){ // \W匹配任何非单词字符。等价于“[^A-Za-z0-9_]”。 var re = /[\W_]/g; // 将字符串变成小写字符,并干掉除字母数字外的字符 var lowRegStr = str.toLowerCase().replace(re,''); // 如果字符串lowRegStr的length长度为0时,字符串即是palindrome if(lowRegStr.length===0) return true; // 如果字符串的第一个和最后一个字符不相同,那么字符串就不是palindrome if(lowRegStr[0]!=lowRegStr[lowRegStr.length-1]) return false; //递归 return palindrome(lowRegStr.slice(1,lowRegStr.length-1)); }
2. 배열 연산
思路一:反向遍历字符串 function reverseString(str){ var tmp = ''; for(var i=str.length-1; i>=0; i--) tmp += str[i]; return tmp }
3. 지정된 길이의 임의 문자열을 생성합니다
function reverseString(str){ var arr = str.split(""); var i = 0,j = arr.length-1; while(i<j){ tmp = arr[i]; arr[i] = arr[j]; arr[j] = tmp; i++; j--; } return arr.join(""); }
4. 문자열에서 가장 빈번한 문자를 계산합니다
function randomString(n){ var str = 'abcdefghijklmnopqrstuvwxyz0123456789'; var tmp = ''; for(var i=0; i<n; i++) { tmp += str.charAt(Math.round(Math.random()*str.length)); } return tmp; }
배열 연산
1. 배열 중복 제거
function findMaxDuplicateChar(str) { if(str.length == 1) { return str; } var charObj = {}; for(var i = 0; i < str.length; i++) { if(!charObj[str.charAt(i)]) { charObj[str.charAt(i)] = 1; } else { charObj[str.charAt(i)] += 1; } } var maxChar = '', maxValue = 1; for(var k in charObj) { if(charObj[k] >= maxValue) { maxChar = k; maxValue = charObj[k]; } } return maxChar + ':' + maxValue; }
2.
function unique(arr){ var obj = {} var result = [] for(var i in arr){ if(!obj[arr[i]]){ obj[arr[i]] = true; result.push(arr[i]); } } return result; }
function getMaxProfit(arr){ var min = arr[0], max = arr[0]; for(var i = 0; i < arr.length; i++){ if(arr[i] < min) min = arr[i]; if(arr[i] > max) max = arr[i]; } return max - min; }
function factorialize(num) { var result = 1; if(num < 0) return -1; if(num == 0 || num == 1) return 1; while(num>1) { result *= num--; } return result; }
function factorialize(num) { var result = 1; if(num < 0) return -1; if(num == 0 || num == 1) return 1; if(num > 1) return num*factorialize(num-1); }
function getfib(n){ if(n == 0) return 0; if(n == 1) return 1; if(n > 1) return getfib(n-1) + getfib(n-2); } function fibo(len){ var fibo = []; for(var i = 0; i < len; i++){ fibo.push(getfib(i)); } return fibo; }
비재귀적 구현
function getFibonacci(n) { var fibarr = []; var i = 0; while(i < n) { if(i <= 1) { fibarr.push(i); } else { fibarr.push(fibarr[i - 1] + fibarr[i - 2]) } i++; } return fibarr; }
function binary_search(arr, key) { var low = 0, high = arr.length - 1; while(low <= high){ var mid = parseInt((high + low) / 2); if(key == arr[mid]){ return mid; }else if(key > arr[mid]){ low = mid + 1; }else if(key < arr[mid]){ high = mid -1; } } return -1; }
일반적으로 사용되는 6가지 JS 정렬 알고리즘 및 비교
위 내용은 프런트 엔드의 몇 가지 일반적인 JS 정렬 코드의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











이 기사에서는 Windows 11/10에서 촬영 날짜에 따라 사진을 정렬하는 방법을 소개하고 Windows에서 날짜별로 사진을 정렬하지 않는 경우 해결 방법에 대해 설명합니다. Windows 시스템에서는 이미지 파일을 쉽게 찾으려면 사진을 적절하게 정리하는 것이 중요합니다. 사용자는 날짜, 크기, 이름 등 다양한 정렬 방법을 기반으로 사진이 포함된 폴더를 관리할 수 있습니다. 또한 필요에 따라 오름차순 또는 내림차순을 설정하여 파일을 보다 유연하게 정리할 수 있습니다. Windows 11/10에서 촬영한 날짜별로 사진을 정렬하는 방법 Windows에서 촬영한 날짜별로 사진을 정렬하려면 다음 단계를 따르세요. 사진, 바탕화면 또는 사진을 저장한 폴더를 엽니다. 리본 메뉴에서

Outlook은 작업을 보다 효율적으로 관리하는 데 도움이 되는 다양한 설정과 기능을 제공합니다. 그 중 하나는 필요에 따라 이메일을 분류할 수 있는 정렬 옵션입니다. 이 튜토리얼에서는 Outlook의 정렬 기능을 사용하여 보낸 사람, 제목, 날짜, 카테고리 또는 크기와 같은 기준에 따라 전자 메일을 구성하는 방법을 알아봅니다. 이렇게 하면 중요한 정보를 더 쉽게 처리하고 찾을 수 있어 생산성이 높아집니다. Microsoft Outlook은 이메일과 달력 일정을 중앙에서 쉽게 관리할 수 있게 해주는 강력한 애플리케이션입니다. 이메일을 쉽게 보내고 받고 정리할 수 있으며, 내장된 캘린더 기능을 통해 다가오는 이벤트와 약속을 쉽게 추적할 수 있습니다. Outloo에 참여하는 방법

PHP와 Vue: 프론트엔드 개발 도구의 완벽한 조합 오늘날 인터넷이 빠르게 발전하는 시대에 프론트엔드 개발은 점점 더 중요해지고 있습니다. 사용자가 웹 사이트 및 애플리케이션 경험에 대한 요구 사항이 점점 더 높아짐에 따라 프런트 엔드 개발자는 보다 효율적이고 유연한 도구를 사용하여 반응형 및 대화형 인터페이스를 만들어야 합니다. 프론트엔드 개발 분야의 두 가지 중요한 기술인 PHP와 Vue.js는 함께 사용하면 완벽한 도구라고 볼 수 있습니다. 이 기사에서는 독자가 이 두 가지를 더 잘 이해하고 적용할 수 있도록 PHP와 Vue의 조합과 자세한 코드 예제를 살펴보겠습니다.

우리 작업에서는 wps 소프트웨어를 자주 사용합니다. wps 소프트웨어에서는 데이터를 처리하는 방법이 다양하고 그 기능도 매우 강력합니다. 우리는 평균, 요약 등을 찾는 기능을 자주 사용합니다. WPS 소프트웨어 라이브러리에는 모든 사람을 위해 통계 데이터에 사용할 수 있는 방법이 준비되어 있습니다. 아래에서는 WPS에서 점수를 정렬하는 방법을 소개합니다. 이 내용을 읽고 나면 경험을 통해 배울 수 있습니다. 1. 먼저 순위를 매길 테이블을 엽니다. 아래 그림과 같이. 2. 그런 다음 수식 =rank(B2, B2: B5, 0)을 입력하고, 반드시 0을 입력하세요. 아래 그림과 같이. 3. 수식을 입력한 후 컴퓨터 키보드의 F4 키를 누르면 상대참조가 절대참조로 변경됩니다.

프론트엔드 개발 인터뷰에서 일반적인 질문은 HTML/CSS 기초, JavaScript 기초, 프레임워크 및 라이브러리, 프로젝트 경험, 알고리즘 및 데이터 구조, 성능 최적화, 크로스 도메인 요청, 프론트엔드 엔지니어링, 디자인 패턴, 새로운 기술 및 트렌드. 면접관 질문은 후보자의 기술적 능력, 프로젝트 경험, 업계 동향에 대한 이해를 평가하기 위해 고안되었습니다. 따라서 지원자는 자신의 능력과 전문성을 입증할 수 있도록 해당 분야에 대한 충분한 준비를 갖추어야 합니다.

이 문서에서는 끌어서 놓기를 통해 PowerQuery에서 여러 열의 순서를 바꾸는 방법을 보여줍니다. 다양한 소스에서 데이터를 가져올 때 열의 순서가 원하는 순서가 아닌 경우가 많습니다. 열을 다시 정렬하면 분석 또는 보고 요구 사항에 맞는 논리적 순서로 열을 정렬할 수 있을 뿐만 아니라 데이터의 가독성이 향상되고 필터링, 정렬, 계산 수행 등의 작업 속도가 빨라집니다. Excel에서 여러 열을 다시 정렬하는 방법은 무엇입니까? Excel에서 열을 재정렬하는 방법에는 여러 가지가 있습니다. 열 머리글을 선택하고 원하는 위치로 끌기만 하면 됩니다. 그러나 이 접근 방식은 많은 열이 포함된 대규모 테이블을 처리할 때 번거로울 수 있습니다. 열을 보다 효율적으로 다시 정렬하려면 향상된 쿼리 편집기를 사용할 수 있습니다. 쿼리 개선

Excel의 정렬 방법: 1. 단일 열 정렬, 2. 다중 열 정렬, 3. 사용자 정의 정렬. 자세한 소개: 1. 단일 열 정렬은 선택한 열에 따라 정렬하는 가장 일반적인 정렬 방법입니다. 2. 다중 열 정렬은 일반적으로 특정 열을 기준으로 먼저 여러 열의 데이터를 정렬하는 것을 말합니다. 3. 사용자 정의 정렬로 사용자가 자신의 필요에 따라 정렬 순서를 정의할 수 있습니다.

WPS는 텍스트 편집, 데이터 테이블, PPT 프리젠테이션, PDF 형식, 순서도 및 기타 기능을 포함하는 매우 완벽한 사무용 소프트웨어입니다. 그 중 우리가 가장 많이 사용하는 것은 텍스트, 표, 데모 등이며, 우리에게 가장 친숙한 것들이기도 합니다. 우리는 학습 작업에서 일부 데이터 통계를 만들기 위해 때때로 WPS 테이블을 사용합니다. 예를 들어, 학교에서는 너무 많은 학생의 점수를 수동으로 정렬해야 한다면 정말 골치 아픈 일이 될 것입니다. 실제로 WPS 테이블에는 이 문제를 해결하는 정렬 기능이 있으므로 걱정할 필요가 없습니다. 다음으로 WPS를 함께 정렬하는 방법을 알아보겠습니다. 방법 단계: 1단계: 먼저 정렬해야 하는 WPS 테이블을 열어야 합니다.
