算法导论----<递归插入>及实例
来源:互联网 发布:安卓去视频广告软件 编辑:程序博客网 时间:2024/05/21 09:20
Code:
/*
插入递归
INSERTION(A,p,r)
for j = p to r
do key = A[j]
i = j-1
while i > 0 and A[i] >key
do A[i+1] = A[i]
i = i - 1
A[i+1] = key
INSERTION-SORT(A,p,r)
if p<r
r = r-1
INSERTION-SORT(A,p,r)
INSERTION(A,p,r)
*/
#include <iostream>
#include <stdlib.h>
using namespace std;
int i,j,key;
/*
void insertion(int *A,int r)
{
int key;
int i;
if(r==1)
{
return;
}
insertion(A,r-1);
key = A[r-1];
for(i = r-2;i>=0 && key<A[i];i--)
{
A[i+1] = A[i];
}
A[i+1] = key;
}
*/
void insertion(int *A,int p,int r){
for(j=p;j<=r;j++)
{
key = A[j];
i = j-1;
while(i>=0 && A[i]>key)
{
A[i+1] = A[i];
i--;
}
A[i+1] = key;
}
}
void insertionsort(int *A,int p,int r)
{
if(p<r)
{
r--;
insertionsort(A,p,r);
insertion(A,p,r);
}
}
int main(){
int A[10] = {99,9,8,7,66,5,4,3,2,1};
insertion(A,0,9);
for( j=0;j<10;j++)
{
cout<<A[j]<<" ";
}
return 0;
}
时间复杂度O(n^2)
- 算法导论----<递归插入>及实例
- 算法导论----<二分法改进递归插入算法>及实例
- 算法导论-递归插入
- 算法导论----<插入排序>及实例
- 算法导论--插入排序递归和非递归写法
- 算法导论习题2.3-4 插入排序递归算法2
- 学习算法导论-插入查询(递归实现)
- 算法导论学习2.3-4 插入排序的递归版本
- 递归插入排序-《算法导论》学习笔记三
- 【java实现】算法导论之插入排序递归
- 算法导论----<选择排序>及实例
- 算法导论----<归并排序>及实例
- 【算法导论】递归程序设计
- 算法导论:插入排序
- 插入排序【算法导论】
- 算法导论-----插入排序
- 算法导论-插入排序
- 《算法导论》 插入排序
- 15 个最佳 jQuery 翻书效果插件
- 史上最全开源大数据工具汇总
- 我的Python学习之路之基本语法-面向对象编程
- Linux忘记root密码的修改方法
- 剑指offer-面试题34:丑数
- 算法导论----<递归插入>及实例
- SDOI2016 Round1 滚粗记
- 信息资源管理——基础
- Linux目录名称解析
- 人工神经网络——笔记摘抄2
- JQuery解析XML数据的几个例子
- MS-Sqlserver的Timestamp不可转换成Datetime
- Java 爬虫 菜逼教程 00
- Git 2.0 更改 push default 为‘simple’