<pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

          <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

          <p id="bbfd9"></p>

          <p id="bbfd9"><cite id="bbfd9"></cite></p>

            <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

            <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
            <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
            C語言

            C語言快速排序實例代碼

            時間:2025-02-26 14:09:13 C語言 我要投稿
            • 相關推薦

            C語言快速排序實例代碼

              快速排序是對冒泡法排序的一種改進。下面小編為大家整理了C語言快速排序實例代碼,希望能幫到大家!

            #include <stdio.h>

            int qusort(int s[],int start,int end)    //自定義函數 qusort()

            {

                int i,j;    //定義變量為基本整型

                i=start;    //將每組首個元素賦給i

                j = end;    //將每組末尾元素賦給j

                s[0]=s[start];    //設置基準值

                while(i<j)

                {

                    while(i<j&&s[0]<s[j])

                    j--;    //位置左移

                    if(i<j)

                    {

                        s[i]=s[j];    //將s[j]放到s[i]的位置上

                        i++;    //位置右移

                    }

                    while(i<j&&s[i]<=s[0])

                        i++;    //位置左移

                    if(i<j)

                    {

                        s[j]=s[i];    //將大于基準值的s[j]放到s[i]位置

                        j--;    //位置左移

                    }

                }

                s[i]=s[0];    //將基準值放入指定位置

                if (start<i)

                    qusort(s,start,j-1);    //對分割出的部分遞歸調用qusort()函數

                if (i<end)

                    qusort(s,j+1,end);

                return 0;

            }

            int main()

            {

                int a[11], i;    //定義數組及變量為基本整型

                printf("請輸入10個數: ");

                for(i=1;i<=10;i++)

                    scanf("%d",&a[i]);    //從鍵盤中輸入10個要進行排序的數

                qusort(a,1,10);    //調用qusort()函數進行排序

                printf("排序后的順序是: ");

                for(i=1;i<=10;i++)

                    printf("%5d",a[i]);    //輸出排好序的數組

                printf(" ");

                return 0;

            }

            【C語言快速排序實例代碼】相關文章:

            C語言快速排序算法及代碼06-25

            C語言合并排序及實例代碼10-30

            C語言插入排序算法及實例代碼07-02

            C語言合并排序及實例代碼講解09-18

            C語言合并排序及實例代碼詳解11-02

            C語言奇偶排序算法詳解及實例代碼10-30

            C語言選擇排序算法及實例代碼07-25

            C語言中qsort快速排序使用實例08-30

            C語言中使用快速排序算法對元素排序的實例06-20

                    <pre id="bbfd9"><del id="bbfd9"><dfn id="bbfd9"></dfn></del></pre>

                    <ruby id="bbfd9"></ruby><p id="bbfd9"><mark id="bbfd9"></mark></p>

                    <p id="bbfd9"></p>

                    <p id="bbfd9"><cite id="bbfd9"></cite></p>

                      <th id="bbfd9"><form id="bbfd9"><dl id="bbfd9"></dl></form></th>

                      <p id="bbfd9"><cite id="bbfd9"></cite></p><p id="bbfd9"></p>
                      <p id="bbfd9"><cite id="bbfd9"><progress id="bbfd9"></progress></cite></p>
                      飘沙影院