排序算法·插入排序
来源:互联网 发布:idea关联源码 编辑:程序博客网 时间:2024/06/07 07:16
算法讲解方面参阅下面这本书即可,这里只给出自己练习时实现的代码。参考书籍:《算法设计与分析基础》
1.伪代码
算法: InsertionSort(A[0...n-1]) //该算法用插入排序对给定的数组排序 //输入:一个可排序数组A[0...n-1] //输出:非降序排列的数组A[0...n-1] for i = 1 to n-1 do v = A[i] j = i - 1 while j >= 0 and A[j] > v do A[j+1] = A[j] j = j - 1 A[j+1] = v
2.CPP实现:
#include <iostream>using namespace std;void insertion_sort(int arr[], int length);int main(){ int arr[] = {25, 45, 15, 40, 90, 5, 85, 75, 32, 65, 10, 5, 100, 15}; int length = sizeof(arr) / sizeof(int); insertion_sort(arr, length); for (int i = 0; i < length; i++) cout << arr[i] << " "; cout << endl; return 0;}void insertion_sort(int arr[], int length){ int n = length; for(int i = 1; i <= n-1; i++){ int v = arr[i]; int j = i - 1; while(j >= 0 && arr[j] > v){ arr[j+1] = arr[j]; j = j - 1; } arr[j+1] = v; }}
3.算法复杂度:
输入规模:n
基本操作:数值比较
复杂度:
阅读全文
0 0
- 排序算法·插入排序
- 排序算法-插入排序
- 排序算法--插入排序
- 排序算法---插入排序
- 排序算法-插入排序
- 排序算法-插入排序
- 排序算法--插入排序
- 排序算法-插入排序
- 排序算法-插入排序
- 排序算法---插入排序
- 排序算法--插入排序
- 排序算法--插入排序
- 排序算法--插入排序
- 排序算法-插入排序
- 排序算法--插入排序
- 排序算法-插入排序
- 排序算法-插入排序
- 排序算法--插入排序
- [shell]Linux脚本开头#!/bin/bash和#!/bin/sh是什么意思以及区别
- struts2 404 action找不到(二)
- TCP网络编程中connect()、listen()和accept()三者之间的关系
- Appium 玩转 Appium 中 logger
- js自动登录cookie
- 排序算法·插入排序
- springboot -- 通过cors协议解决跨域问题
- TensorFlow代码结构优化tips
- UVA 201 Squares(枚举)
- 【学习摘记】马士兵HTML & CSS_课时6_Frame框架&html学法
- jsp基础
- hdu 4614 Vases and Flowers(线段树)
- hibernate-spring测试报错:com.sun.proxy.$Proxy44 cannot be cast to com.mm.service.imp.RoleServic
- C++prime plus第6版第三章要点