?? ????? ?? ??, ?? ??, ?? ?? ? ??? ?? ????? ?? ?????. ??? ??? ?? ????? ????? ?? ??? ??? ??? ???? ????? ??? ?? ?????. ?, ??? ??? ?? ??? ????? ? ???? ????? ????? ?? ??? ?????. ?? ?????? ?? ??? ?? ??? ?? JavaScript? ???? ??? ???????. ??????
??
- ?? ?? ?????? ??????
-
?? ?? ????? ?? ??
- ?????
- ?? ???
- JavaScript? ??
- ??
?? ?? ?????? ??????
?? ?? ????? ?? ?? ??? ??? ??? ?? ???????. ??? ??? ???? ??? ?? ? ???? ?? ?? ? ?? ??? ?? ??? ????? ?? ?? ??? ?? ???? ?? ??? ????.
- ??: ?? ?? ??? ??? ? ???? ????
- ??: ??, ? ??? ????? ??
- ??: ????? ??? ??? ?? ?????
? ?? ??? ??? ?????? ??? ? ?? ?? ? ?? ??? ?? ??? O(n2) ?????? ????? ??? ?????.
?? ?? ????? ?? ??
??? ?? ???? ?? ?? ?? ??? ???? ?? ??? ???? ?? ??????. ??? ?? ??? ????? ??? ????.
?? ??? ????? ??? ??? ?? ??? ???? [38, 27, 43, 3, 9, 82, 10] ??? ???? ???? ?? ?? ????? ???? ??? ???????.
1??: ???
?? ??? ? ?? ??? ??? ?? ??? ?? ?? ?? ?? ??? ??? ??? ?? ??? ? ?? ??? ?? ???, ?? ??? ?? ??? ??? ????.
2??: ?? ??(??)
? ?? ??? ?? ?? ??? ???? ???? ????.
?? ???
?? ??? ?? ??(??, ??, ??)?? O(n log n) ?? ???? ????? ? ? ??? ??? ?? O(n2) ?????? ? ??????.
??? ??? ????.
- ???: ??? log n ? ????(? ???? ??? ???? ????)
- ??: ? ?? ???? n?? ??? ?????
- ??: n? ?? × log n ?? = O(n log n)
??:
- ?? ??: O(n2)
- ?? ??: O(n2)
- ?? ??: O(n log n)
1,000? ?? ??? ??:
- O(n2) ≒ 1,000,000? ??
- O(n log n) ≒ 10,000 ??
?? ???
?? ???? ?? ?? ?? ??? ???? ?? O(n)?? ?? ??? ?????. ?? ?? ?? ?? ?? ??? ??? O(1) ???? ??? ?? ????? ?? ????? ??? ??? ???? ?? ?? ????.
JavaScript? ??
// The Merge Helper Function function merge(left, right) { const result = []; let leftIndex = 0; let rightIndex = 0; while (leftIndex < left.length && rightIndex < right.length) { if (left[leftIndex] <= right[rightIndex]) { result.push(left[leftIndex]); leftIndex++; } else { result.push(right[rightIndex]); rightIndex++; } } // Add remaining elements while (leftIndex < left.length) { result.push(left[leftIndex]); leftIndex++; } while (rightIndex < right.length) { result.push(right[rightIndex]); rightIndex++; } return result; }
?? ?? ??:
- ?? ??:
const result = []; let leftIndex = 0; let rightIndex = 0;
- ??? ??? ??? ? ??? ????
- ? ?? ?? ??? ?? ???? ??????
- ??? ???? ? ??? ??? ?????? ???? ??? ?????
- ?? ?? ??:
while (leftIndex < left.length && rightIndex < right.length) { if (left[leftIndex] <= right[rightIndex]) { result.push(left[leftIndex]); leftIndex++; } else { result.push(right[rightIndex]); rightIndex++; } }
- ? ??? ??? ?????
- ? ?? ??? ???? ??? ?????
- ??? ??? ???? ???? ??? ?????
- ?? ??? ? ? ?? ?? ? ?? ?? ???? ???
- ?? ??:
while (leftIndex < left.length) { result.push(left[leftIndex]); leftIndex++; }
- ??? ?? ??
- ? ??? ?? ???? ? ? ???? ?????
- ???? ?? ?? ???
?? ?? ?? ??
function mergeSort(arr) { // Base case if (arr.length <= 1) { return arr; } // Divide const middle = Math.floor(arr.length / 2); const left = arr.slice(0, middle); const right = arr.slice(middle); // Conquer and Combine return merge(mergeSort(left), mergeSort(right)); }
?? ?? ??:
- ?? ??:
if (arr.length <= 1) { return arr; }
- ??? 0 ?? 1? ??? ?????
- ??? ?? ?? ???? ????
- ?? ?? ?? ??? ???
- ?? ??:
const middle = Math.floor(arr.length / 2); const left = arr.slice(0, middle); const right = arr.slice(middle);
- ??? ? ???? ??
- Slice()? ??? ???? ?? ? ??? ?????
- ?? ? ?? ??? ??? ?? ????
- ?? ?? ? ??:
return merge(mergeSort(left), mergeSort(right));
- ? ??? ????? ??
- ?? ??? ???? ??? ??? ??
- ?? ?? ??? ???? ?? ???? ?? ????
?? ??
[38, 27, 43, 3]? ??? ????? ???????.
- ? ?? ??:
// The Merge Helper Function function merge(left, right) { const result = []; let leftIndex = 0; let rightIndex = 0; while (leftIndex < left.length && rightIndex < right.length) { if (left[leftIndex] <= right[rightIndex]) { result.push(left[leftIndex]); leftIndex++; } else { result.push(right[rightIndex]); rightIndex++; } } // Add remaining elements while (leftIndex < left.length) { result.push(left[leftIndex]); leftIndex++; } while (rightIndex < right.length) { result.push(right[rightIndex]); rightIndex++; } return result; }
- ? ?? ??:
const result = []; let leftIndex = 0; let rightIndex = 0;
- ?? ??:
while (leftIndex < left.length && rightIndex < right.length) { if (left[leftIndex] <= right[rightIndex]) { result.push(left[leftIndex]); leftIndex++; } else { result.push(right[rightIndex]); rightIndex++; } }
??
?? ??? ??? ??? ???? ???? ?? ??? ???? ?? ???? ?? ???????. ??? ?? ????? ?? ?? ??? ????? O(n log n) ?? ????? ?? ??? ??? ?? ?? ??????? ?????.
?? ??:
- ?? ?? ??? ?????
- ?? ??? O(n log n) ?? ???
- O(n) ?? ?? ??
- ???? ?? ????
- ??? ?????? ??
?? ??? ?? ??? ?????
? ???? ?? ??? ??? ??? ?? ?? ? ?? ?? ???? ??
????? ??(?, ??, ??? ?? ????/???), ???? ?? ??
??? ????, ?? ???? ?? ??? ?? ????? ?? ??????.

???? ???
- ???
- ????
- ??(???)
??? ?? ??? ??? ????. ??? ?? ??? ????
? ??? ?? ?? ???? ??: ?? ???? ???? ?? ??? ???? ?? ?????. ??? ??? PHP ??? ????? ?? ?? ??? ?????!

? AI ??

Undress AI Tool
??? ???? ??

Undresser.AI Undress
???? ?? ??? ??? ?? AI ?? ?

AI Clothes Remover
???? ?? ???? ??? AI ?????.

Clothoff.io
AI ? ???

Video Face Swap
??? ??? AI ?? ?? ??? ???? ?? ???? ??? ?? ????!

?? ??

??? ??

???++7.3.1
???? ?? ?? ?? ???

SublimeText3 ??? ??
??? ??, ???? ?? ????.

???? 13.0.1 ???
??? PHP ?? ?? ??

???? CS6
??? ? ?? ??

SublimeText3 Mac ??
? ??? ?? ?? ?????(SublimeText3)

Node.js?? HTTP ??? ???? ? ?? ???? ??? ????. 1. ?? ????? ????? ??? ??? ? ?? ????? ?? ?? ? https.get () ??? ?? ??? ??? ? ?? ????? ?? ??? ?????. 2.axios? ??? ???? ? ?? ??????. ??? ??? ??? ??? ??? ??? ???/???, ?? JSON ??, ???? ?? ?????. ??? ?? ??? ????? ?? ????. 3. ?? ??? ??? ??? ??? ???? ???? ??? ??? ???? ?????.

JavaScript ??? ??? ?? ?? ? ?? ???? ????. ?? ???? ???, ??, ??, ?, ???? ?? ? ??? ?????. ?? ????? ?? ?? ? ? ??? ????? ?? ??? ??? ????. ??, ?? ? ??? ?? ?? ??? ??? ??? ???? ??? ??? ???? ??? ?? ??? ????. ?? ? ????? ??? ???? ? ??? ? ??? TypeofNull? ??? ?????? ??? ? ????. ? ? ?? ??? ???? ?????? ????? ???? ??? ???? ? ??? ? ? ????.

?????, JavaScript ???! ?? ? JavaScript ??? ?? ?? ?????! ?? ?? ??? ??? ??? ? ????. Deno?? Oracle? ?? ??, ??? JavaScript ?? ??? ????, Google Chrome ???? ? ??? ??? ???? ?????. ?????! Deno Oracle? "JavaScript"??? ????? Oracle? ?? ??? ??? ??????. Node.js? Deno? ??? ? Ryan Dahl? ??? ?????? ???? ????? JavaScript? ??? ???? Oracle? ????? ???? ?????.

??? JavaScript?? ??? ??? ?????? ?? ???????. ?? ??, ?? ?? ? ??? ??? ?? ????? ????? ?????. 1. ?? ??? ??? ????? ???? ??. ()? ?? ??? ??? ?????. ?. ()? ?? ??? ?? ??? ??? ?? ? ? ????. 2. ?? ??? .catch ()? ???? ?? ??? ??? ?? ??? ??????, ??? ???? ???? ????? ??? ? ????. 3. Promise.all ()? ?? ????? (?? ?? ?? ? ??????? ??), Promise.Race () (? ?? ??? ?? ?) ? Promise.AllSettled () (?? ??? ???? ??)

Cacheapi? ?????? ?? ???? ??? ???? ???, ?? ??? ??? ?? ???? ? ??? ?? ? ???? ??? ??????. 1. ???? ????, ??? ??, ?? ?? ?? ???? ???? ??? ? ????. 2. ??? ?? ?? ??? ?? ? ? ????. 3. ?? ?? ?? ?? ?? ??? ??? ?? ?????. 4. ??? ???? ?? ?? ???? ?? ?? ?? ?? ?? ???? ?? ?? ??? ??? ? ????. 5. ?? ???? ??, ??? ??? ? ??? ??, ?? ??? ? ?? ???? ???? ???? ? ?? ?????. 6.?? ??? ?? ?? ?? ??, ???? ?? ? HTTP ?? ????? ?????? ???????.

JavaScript? ??? ??? ?? ??, ? ? ? ?? ???? ???? ??? ??? ?????. 1. ?? ??? ?? ??? ???? ??? ??? ??? ??? ?? WebAPI? ?????. 2. WebAPI? ??????? ??? ?? ? ? ??? ?? ??? (??? ?? ?? ???? ??)? ????. 3. ??? ??? ?? ??? ?? ??? ?????. ?? ??? ??? ????? ??? ??? ?? ? ???? ?????. 4. ???? ?? (? : Promise. 5. ??? ??? ???? ?? ???? ???? ?? ?? ?? ??? ????? ? ??????.

??? ??? ?? ???? ?? ??? ???? ?? ??? ??? ?? ??? ?? ??? ?????. 1. ??? ?? : ?? ??? ?? ? ? ???? ?? ??? ???? ??? ???? ??????. ?? ??, ??? ?? ? ? ?? ??? ?? ? ?? ??? ??????. 2. ??? ?? : ??? ???? ?? ?? ??? ?? ???? ????? ? ?? ?????? ???? ????? ? ?? ?? ??? true? ??????. 3. ?? ???? ?? ?? ??? ?? ??, ?? ??? ? ?? ???? ?????. 4. DOM ??? ???? ??, ?? ? ??? ? ??? ??? ?? ???? ?? ???? ?????.

JavaScript ???? ? ? ?? ??? ???? ??? ???? ?? ??? ????. 1. ??? ???? ??? ??, ??, ??? ?? ? ??? ??? ?? ? ? ????. 2. ?? ? findIndex? ?? ?? ?? ???? ?? ? ?????. 3. ??? ??? ????? ?? ?? ??? ???? ? ?????. 4. ??? ?? ? ? ??? ?? ??? ?????. 5. ???? ??? ?? ??? ??? ? ?? ?????????. ??? ??? ????? ???? ????? ????.
