C++ 选择排序、冒泡排序、插入排序
来源:互联网 发布:it资讯 编辑:程序博客网 时间:2024/06/08 13:55
//sort.h
#include "stdlib.h"#include "stdio.h"#include <iostream>template<typename T>class Sort { public://void SelectSort(T* array, int size);void SelectSort(T*array, int size) {int temp = 0;for (int i = 0; i < size; i++){temp = i;for (int j = i + 1; j < size; j++) {//每一次排序确定的是最前面的一个数if (array[temp] > array[j]) {//记录一轮比较下来的最大值的地方,和出发的地方进行交换temp = j;}}if (temp != i) {Swap(array, temp, i);}}std::cout << "SelectSort:";for (int i = 0; i < size; i++){std::cout << array[i] << std::endl;}}//插入排序第一次前两个数进行排序// 第二次前三个数进行排序// 第三次前四个数进行排序//template<typename T>void Sort::InsertSort(T*array, int size) {for (int i = 1; i < size; i++){for (int j = i; j>0; j--){if (array[j]<array[j - 1]) {Swap(array, j, j - 1);}}}std::cout << "InsertSort:";for (int i = 0; i < size; i++){std::cout << array[i] << std::endl;}}//冒泡排序第一次每两个进行排序,排到最后,那么最大的在最后// 第二次,除去最大的,把剩下的进行第一次那样的排序操作//template<typename T>void Sort::BubbleSort(T*array, int size) {//每一次排序确定的是最后面的一个数 for (int i = 0; i < size; i++) {for (int j = 1; j < size - i; j++){if (array[j]<array[j - 1]) {//小一位大于大一位,那么交换位置Swap(array, j, j - 1);}}}std::cout << "InsertSort:";for (int i = 0; i < size; i++){std::cout << array[i] << std::endl;}}//template void InsertSort(T* array, int size);//template void BubbleSort(T* array, int size); //template void Sort::Swap(T* array, int x, int y);void Sort::Swap(T* array, int x, int y){T temp = array[x];array[x] = array[y];array[y] = temp;} }; --------------------------------------------------------------------------------
#include "sort.h" void main() { int array[] = {1,10,4,2,11,20,14,23,12}; Sort<int> sort;sort.BubbleSort(array,9);sort.SelectSort(array,9);sort.InsertSort(array, 9);getchar(); }
阅读全文
0 0
- 冒泡排序、选择排序、插入排序 算法实现(C++)
- 冒泡排序、选择排序、插入排序 算法实现(C++)
- 冒泡排序、选择排序、插入排序 算法实现(C++)
- 冒泡排序、插入排序、选择排序--C语言实现
- 冒泡排序、选择排序、插入排序 算法实现(C++)
- C语言中冒泡排序,插入排序,选择排序
- 【C语言】冒泡排序,选择排序,插入排序
- c语言实现选择排序、冒泡排序、插入排序
- 冒泡选择插入排序
- 冒泡、选择、插入排序
- 选择、插入、冒泡排序
- 冒泡、插入、选择排序
- 选择、插入、冒泡排序
- 冒泡、选择、插入排序
- 选择、冒泡、插入-排序
- 插入 选择 冒泡 排序
- 选择、冒泡、插入排序
- 冒泡、选择、插入排序
- IEEE-754标准
- How to solve:util.NativeCodeLoader: Unable to load native-hadoop library for your platform ??
- 算法导论 练习题 15.4-3
- python2.7爬虫学习笔记(一)---Urllib库的使用
- win7电脑关机后鼠标灯还在亮怎么解决
- C++ 选择排序、冒泡排序、插入排序
- windows程序设计——开始、Unicode 简介
- Java ResourceBundle读取properies配置文件
- WinDbg分析DUMP文件
- ES6语法(9)
- Kotlin---android官方开发语言使用入门
- 在vue项目中前端生成二维码应该注意的问题
- 1017. A除以B (20)
- jdbc基础