Shell 快速排序算法实现
#!/bin/bash
快速排序函数
quick_sort () { if [[ $# -lt 2 ]]; then echo "$@" else local pivot=$1 shift local lesser=() local greater=() for i in '$@'; do if [[ $i -lt $pivot ]]; then lesser+=('$i') else greater+=('$i') fi done echo $(quick_sort '${lesser[@]}') $pivot $(quick_sort '${greater[@]}') fi }
测试
arr=(5 3 8 2 1 9 4 7 6) sorted_arr=$(quick_sort '${arr[@]}') echo '原数组:${arr[@]}' echo '排序后的数组:${sorted_arr[@]}'
原文地址: https://www.cveoy.top/t/topic/lREI 著作权归作者所有。请勿转载和采集!