数据结构源码笔记(C语言):直接选择排序
//实现直接选择排序算法#include<stdio.h>
#include<malloc.h>
#define MAXE 20typedef int KeyType;
typedef char InfoType[10];typedef struct
{KeyType key;InfoType data;
}RecType;void SelectSort(RecType r[],int n)// 直接选择排序算法
{int i,j,k,l;RecType temp;for(i=0;i<n-1;i++)//做第i趟排序{k=i;for(j=i+1;j<n;j++)//在当前无序区r[i....n-1]中选择关键字最小的r[k]if(r[j].key<r[k].key)k=j;//k记下目前找到的最小关键字所在的位置if(k!=i)//交换r[i]和r[k]{temp=r[i];r[i]=r[k];r[k]=temp;}printf(" i=%d ",i);//输出每一趟的排序结果for(l=0;l<n;l++)printf("%4d",r[l].key);printf("\n");}
}int main()
{int i,k,n,m=5;KeyType a[]={6,8,7,9,0,1,3,2,4,5};n=sizeof(a)/4;RecType r[MAXE];for(i=0;i<n;i++) r[i].key=a[i];printf("\n");printf("初始关键: ");for(k=0;k<n;k++)printf("%4d",r[k].key);printf("\n");SelectSort(r,n);printf("最后结果: ");for(k=0;k<n;k++)printf("%4d",r[k].key);printf("\n\n");return 0;
}
数据结构源码笔记(C语言描述)汇总:
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
数据结构源码笔记(C语言):直接插入排序
数据结构源码笔记(C语言):直接选择排序
数据结构源码笔记(C语言):置换-选择算法
数据结构源码笔记(C语言):Huffman树字符编码
数据结构源码笔记(C语言):Josephus问题之顺序表
数据结构源码笔记(C语言):Josephus问题之循环链接表
数据结构源码笔记(C语言):多项式合并
数据结构源码笔记(C语言):二叉树之叶子结点旋转销毁
数据结构源码笔记(C语言):哈夫曼树
数据结构源码笔记(C语言):集合的位向量表示
数据结构源码笔记(C语言):链接队列
数据结构源码笔记(C语言):链接栈
数据结构源码笔记(C语言):线性表的单链表示
数据结构源码笔记(C语言):线性表的顺序表示
数据结构源码笔记(C语言):栈的基本操作
数据结构源码笔记(C语言):中缀表达式
数据结构源码笔记(C语言):希尔插入排序
数据结构源码笔记(C语言):索引文件建立和查找
数据结构源码笔记(C语言):冒泡排序
数据结构源码笔记(C语言):快速排序
数据结构源码笔记(C语言):可变长度字符串的快速排序
数据结构源码笔记(C语言):基数排序
数据结构源码笔记(C语言):二路归并排序
数据结构源码笔记(C语言):堆排序
数据结构源码笔记(C语言):二叉树搜索树Kruskal
数据结构源码笔记(C语言):二叉搜索树Prim
数据结构源码笔记(C语言):最短路径弗洛伊德算法
数据结构源码笔记(C语言):深度、广度优先生成树
数据结构源码笔记(C语言):邻接矩阵转化邻接表
数据结构源码笔记(C语言):统计字符串中出现的字符及其次数
数据结构源码笔记(C语言):顺序查找
数据结构源码笔记(C语言):哈希表的相关运算算法
数据结构源码笔记(C语言):分块法查找
数据结构源码笔记(C语言):二分查找
数据结构源码笔记(C语言):二叉树遍历
数据结构源码笔记(C语言):二叉平衡树的相关操作算法
数据结构源码笔记(C语言):二叉排序树的基本操作算法
数据结构源码笔记(C语言):B树的相关运算算法
数据结构源码笔记(C语言):直接选择排序相关推荐
- 数据结构源码笔记(C语言):置换-选择算法
//实现置换-选择算法#include<stdio.h> #include<malloc.h> #include<string.h> #include<std ...
- 数据结构源码笔记(C语言描述)汇总
数据结构源码笔记(C语言):英文单词按字典序排序的基数排序 数据结构源码笔记(C语言):直接插入排序 数据结构源码笔记(C语言):直接选择排序 数据结构源码笔记(C语言):置换-选择算法 数据结构源码 ...
- 数据结构源码笔记(C语言):英文单词按字典序排序的基数排序
//实现英文单词按字典序排序的基数排序算法#include<stdio.h> #include<malloc.h> #include<string.h>#defin ...
- 数据结构源码笔记(C语言):索引文件建立和查找
//实现索引文件建立和查找算法#include<stdio.h> #include<malloc.h> #include<string.h> #include< ...
- 数据结构源码笔记(C语言):快速排序
//实现快速排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...
- 数据结构源码笔记(C语言):冒泡排序
//冒泡排序算法实现 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; type ...
- 数据结构源码笔记(C语言):希尔插入排序
//实现希尔插入排序算法 #include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; ty ...
- 数据结构源码笔记(C语言):直接插入排序
//实现直接插入排序算法#include<stdio.h> #include<malloc.h> #define MAXE 20typedef int KeyType; typ ...
- 数据结构源码笔记(C语言):Huffman树字符编码
#include <stdio.h> #include<string.h> #define N 10 /*待编码字符的个数,即树中叶结点的最大个数*/ #define M 2* ...
最新文章
- Android Activity和Fragment的转场动画
- visual studio C语言指针提示:使用未初始化的内存xx
- 2018.8.14笔记
- ionic3 调用本地相册并上传图片
- 爬虫入门-3.初识BeautifulSoup
- 粒子群优化算法(Particle Swarm Optimization)的 Matlab(R2018b)代码实现
- 利用blink CEP实现流计算中的超时统计问题
- 深入理解vsto,开发word插件的利器
- Arduino UNO驱动液晶屏TFT_LCD_ST7789v
- Android平台介绍
- mx250显卡天梯图_MX250和150差别大吗?MX250和MX150区别对比 (全文)
- 投影仪显示服务器不能连接不上,极米投影仪常见故障和自助解决方案?
- 闲置服务器如何利用起来赚点零花钱
- 【Android】用Cubism 2制作自己的Live2D——官方App样例源码学习(4)!
- m_map包 绘制世界地图并投点(matlab)
- 计算机论文一千五,研究生为一千五奖学金花七八千找期刊登论文
- dojo发布者订阅者(dojo/topic模块)
- [css]中间文字两边分割线的方法
- 2006北京最佳小吃店大排行
- 微信收发消息逆向分析-最新微信版本(3.2.1.154)
热门文章
- xlst 解析 html c,怎樣實現利用xslt把xml文件內容顯示到html文件中?急!
- python埋点自动化_iOS自动化埋点的实现
- CompletableFuture源码详解之java.util.concurrent.CompletableFuture#runAsync(java.lang.Runnable)
- 编译分布式并行版caffe(Open MPI)教程
- Python3 系列之 编程规范篇
- 实用:前端小白的切图技巧
- 375. Guess Number Higher or Lower II
- Webx框架:Spring Schema 和 Spring Ext
- 下载数据CityEngine示例数据(Tutorial)配套视频教程(英文)
- 使用Image类提示内存不足问题