C语言 数组排序 – 插入法排序 - C语言零基础入门教程
生活随笔
收集整理的這篇文章主要介紹了
C语言 数组排序 – 插入法排序 - C语言零基础入门教程
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
目錄
- 一.簡介
- 二.數組插入法排序原理
- 三.數組插入法排序實戰
- 四.猜你喜歡
零基礎 C/C++ 學習路線推薦 : C/C++ 學習目錄 >> C 語言基礎入門
一.簡介
經過前面的學習,我們已經學會了數組遍歷,在開發中,我們經常回碰到對數組進行排序,例如:學習成績排序,身高排序,年齡排序等等;在 C 語言中常見的數組排序一共有四種:
- 1.冒泡法排序
- 2.選擇法排序
- 3.插入法排序
- 4.快速法排序
二.數組插入法排序原理
將要排序的數組分成兩部分,每次從后面的部分取出索引最小的元素插入到前一部分的適當位置
三.數組插入法排序實戰
/******************************************************************************************/ //@Author:猿說編程 //@Blog(個人博客地址): www.codersrc.com //@File:C語言教程 - C語言 數組排序 – 插入法排序 //@Time:2021/06/08 08:00 //@Motto:不積跬步無以至千里,不積小流無以成江海,程序人生的精彩需要堅持不懈地積累! /******************************************************************************************/#include<stdlib.h> #include<stdio.h>void main() {int a[5] = { 12, 19, 2 , 993, -34 };int len = sizeof(a) / sizeof(int);for (int i = 0; i < len; i++){printf("排序之前:index:%d value:%d\n", i, a[i]);}//插入法排序for (int i = 1; i < len; i++) {int temp = a[i];int j = i - 1;while (temp < a[j]) {a[j + 1] = a[j];j--;if (j == -1) {break;}}a[j + 1] = temp;}printf("-----------------------------------\n");for (int i = 0;i<len;i++){printf("排序之后:index:%d value:%d\n", i, a[i]);}system("pause"); }/* 輸出:排序之前:index:0 value:12 排序之前:index:1 value:19 排序之前:index:2 value:2 排序之前:index:3 value:993 排序之前:index:4 value:-34 ----------------------------------- 排序之后:index:0 value:-34 排序之后:index:1 value:2 排序之后:index:2 value:12 排序之后:index:3 value:19 排序之后:index:4 value:993 請按任意鍵繼續. . . */四.猜你喜歡
未經允許不得轉載:猿說編程 ? C 語言 數組排序 – 插入法排序
總結
以上是生活随笔為你收集整理的C语言 数组排序 – 插入法排序 - C语言零基础入门教程的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: BugkuCTF-WEB题MD5
- 下一篇: C语言 全局变量和局部变量区别 - C语