请用批处理写一个快速排序
时间: 2023-03-14 07:29:49 浏览: 101
文件排序重命名批处理
我可以用以下批处理编写快速排序:@echo off
rem 快速排序
rem 根据给定的数组调整其元素的顺序rem 定义一个数组
set array=4 2 7 1 5 3rem 将数组转换为参数列表
set args=%array%:loop
rem 判断参数列表是否存在
if "%args%"=="" goto donerem 定义一个最小值
set min=%1rem 定义一个指针
set ptr=1rem 寻找最小值
for /f %%i in ('echo %args%^|findstr /b /c:" "') do (
set /a ptr+=1
set /a num=%%i
if %num% lss %min% set /a min=%num%
)rem 将最小值放到数组的最前面
echo %array%|findstr /b /v /c:"%min%" >nul
if %errorlevel% equ 0 (
set array=%min% %array:~%ptr%
)rem 将参数列表中的最小值移除
set args=%args:~0,%ptr%-1 %args:~%ptr%goto loop:done
echo 排序结果:%array%
阅读全文