[Mudos]LPC实现快速排序

本文介绍了一种高效的排序算法——快速排序,并给出了在mudos环境下的实现示例。文章详细阐述了快速排序的基本思想及其核心步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

排序算法中的快速排序:O(n)算是目前比较快的排序方法。在mudos下编写的话,如下:

/**
 *
 * @param mixed array arrSort 
 * @param int low
 * @param int high
 
*/

void _QuickSort(mixed array arrSort,int low, int high)
{
    
int i,j;
    mixed baseSortKey;

    
//init
    i = low;
    j 
= high;
    
     baseSortKey 
= arrSort[i];

    
while(i<j) {
        
//right compile 
        while(i<&& baseSortKey <= arrSort[j]) j--;
        
if( i<j ){
            arrSort[i]
=arrSort[j];
            i
++;
        }


        
//left
        while(i<&& baseSortKey > arrSort[i]) i++;
                
if( i<j ){
                        arrSort[j]
=arrSort[i];
                        j
--;
                }
 
    }

    arrSort[i] 
= baseSortKey;
    reset_eval_cost();
    
if (low<i) _QuickSort(arrSort,low,i-1);
    
if (i<high) _QuickSort(arrSort,j+1,high);     

}

 

这里和c语言处理类似!(mudos下可能不能深度的递归,测试下来要排序的数组大于46个元素后,就不行了。不过算法思想就是这样的。)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值