【数据结构】直接插入排序

简介:

头文件:


#include <iostream>
using namespace std;

#define MAX 10

typedef struct
{
	int r[MAX];
}Sqlist;


// 交换两个数
void swap(int &a, int &b)
{
	int temp = a;
	a = b;
	b = temp;
	return;
}

// 比較大小
void InsertSort(Sqlist &sl, int n)
{
	for (int i = 1; i<6; ++i)
	{
		if (sl.r[i] < sl.r[i - 1])
		{
			for (int j = i; j>0 && sl.r[j] < sl.r[j - 1]; --j)
			{
				swap(sl.r[j], sl.r[j - 1]);
			}
		}
	}
}


主函数:


#include "InsertSort.h"

int main()
{
	Sqlist sq = { 21, 25, 49, 25, 16, 8 };
	InsertSort(sq,6);
	for (int i = 0; i < 6; ++i)
	{
		cout << sq.r[i] << " ";
	}
	cout << endl;
	return 0;
}







本文转自mfrbuaa博客园博客,原文链接:http://www.cnblogs.com/mfrbuaa/p/5092615.html,如需转载请自行联系原作者


相关文章
|
算法 搜索推荐
数据结构与算法学习十一:冒泡排序、选择排序、插入排序
本文介绍了冒泡排序、选择排序和插入排序三种基础排序算法的原理、实现代码和测试结果。
591 0
数据结构与算法学习十一:冒泡排序、选择排序、插入排序
|
搜索推荐 测试技术
【数据结构常见七大排序(一)】—插入排序篇【直接插入排序】And【希尔排序】
【数据结构常见七大排序(一)】—插入排序篇【直接插入排序】And【希尔排序】
|
存储 算法 搜索推荐
【数据结构与算法】:插入排序与希尔排序
欢迎大家来到初阶数据结构的最后一小节:排序
【数据结构与算法】:插入排序与希尔排序
|
机器学习/深度学习 算法 搜索推荐
数据结构算法--2 冒泡排序,选择排序,插入排序
**基础排序算法包括冒泡排序、选择排序和插入排序。冒泡排序通过相邻元素比较交换,逐步将最大值“冒”到末尾,平均时间复杂度为O(n^2)。选择排序每次找到剩余部分的最小值与未排序部分的第一个元素交换,同样具有O(n^2)的时间复杂度。插入排序则类似玩牌,将新元素插入到已排序部分的正确位置,也是O(n^2)复杂度。这些算法适用于小规模或部分有序的数据。**
|
算法 搜索推荐
数据结构与算法-插入排序
数据结构与算法-插入排序
138 2
|
存储 搜索推荐 算法
[数据结构]————排序总结——插入排序(直接排序和希尔排序)—选择排序(选择排序和堆排序)-交换排序(冒泡排序和快速排序)—归并排序(归并排序)
[数据结构]————排序总结——插入排序(直接排序和希尔排序)—选择排序(选择排序和堆排序)-交换排序(冒泡排序和快速排序)—归并排序(归并排序)
320 1
|
C语言
【C语言/数据结构】排序(直接插入排序|希尔排序)
【C语言/数据结构】排序(直接插入排序|希尔排序)
222 4
|
搜索推荐 算法 C++
[数据结构]-玩转八大排序(一)&&插入排序&&选择排序
[数据结构]-玩转八大排序(一)&&插入排序&&选择排序
|
搜索推荐 算法 Shell
【数据结构与算法】直接插入排序和希尔排序
【数据结构与算法】直接插入排序和希尔排序
|
人工智能 算法 C语言
数据结构与算法——简单排序-冒泡排序、插入排序,时间复杂度下界(图示、代码、时间复杂度、定理)
数据结构与算法——简单排序-冒泡排序、插入排序,时间复杂度下界(图示、代码、时间复杂度、定理)
277 0

热门文章

最新文章