snu.bubbleSort()
冒泡排序
对待排序数字数组执行冒泡排序(原地升序),返回排序后的数组。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.bubbleSort([3, 1, 2])snu.selectionSort()
选择排序
对待排序数字数组执行选择排序(原地升序),返回排序后的数组。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.selectionSort([3, 1, 2])snu.insertionSort()
插入排序
对待排序数字数组执行插入排序(原地升序),返回排序后的数组。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.insertionSort([3, 1, 2])snu.quickSort()
快速排序
对待排序数字数组执行快速排序(原地升序),返回排序后的数组。left / right 用于指定参与排序的子区间(递归时自动传入),一般可不传。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
| left | Number | 否 | 0 | 排序起始下标(含) |
| right | Number | 否 | arr.length - 1 | 排序结束下标(含) |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.quickSort([5, 2, 4, 1, 3])snu.mergeSort()
归并排序
对待排序数字数组执行归并排序(返回新数组,不修改原数组),升序返回排序结果。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的新数组 |
示例
typescript
let sorted = snu.mergeSort([3, 1, 2])snu.heapSort()
堆排序
对待排序数字数组执行堆排序(原地升序),返回排序后的数组。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.heapSort([3, 1, 2])snu.shellSort()
希尔排序
对待排序数字数组执行希尔排序(原地升序),返回排序后的数组。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.shellSort([3, 1, 2])snu.bucketSort()
桶排序
对待排序数字数组执行桶排序(原地升序),返回排序后的数组。bucketSize 控制桶的大小(数值跨度)。
兼容性
| Web | Android |
|---|---|
| √ | √ |
属性
| 名称 | 类型 | 必备 | 默认值 | 描述 |
|---|---|---|---|---|
| arr | Number[] | 是 | - | 待排序数组 |
| bucketSize | Number | 否 | 5 | 每个桶的数值跨度 |
返回值
| 类型 | 必备 | 描述 |
|---|---|---|
| Number[] | 是 | 升序排序后的数组 |
示例
typescript
let sorted = snu.bucketSort([9, 3, 1, 7], 3)