算法代码(2)——分治法排序
来源:互联网 发布:java微信带参数二维码 编辑:程序博客网 时间:2024/06/05 13:29
#include<iostream>
#include<time.h>
using namespace std;
#define NUM 100
#define MAX 65535
void merge(int A[],int p, int q, int r)
{
int n1 =q-p+1;
int n2 =r-q;
int i,j,k;
int L[NUM],R[NUM];
for(i=0; i<n1; i++)
L[i] = A[p+i];
for(j=0; j<n2; j++)
R[j]=A[q+j+1];
L[i] = MAX;
R[j] = MAX;
i=j=0;
for(k=p; k<=r;k++)
{
if(L[i]<=R[j] )
{
A[k] = L[i];
i++;
}else
{
A[k] = R[j];
j++;
}
}
}
void MergeSort(int A[],int p,int r)
{
int q;
if(p<r)
{
q=(p+r)/2;
MergeSort(A,p,q);
MergeSort(A,q+1,r);
merge(A,p,q,r);
}
}
void main()
{
int A[]= { 4,2,6,5,8,3,7};
int i,j;
for( i=0;i<7;i++)
cout<<A[i]<<endl;
MergeSort(A,0,6);
cout<<"after sort"<<endl;
for( i=0;i<7;i++)
cout<<A[i]<<endl;
}
#include<time.h>
using namespace std;
#define NUM 100
#define MAX 65535
void merge(int A[],int p, int q, int r)
{
int n1 =q-p+1;
int n2 =r-q;
int i,j,k;
int L[NUM],R[NUM];
for(i=0; i<n1; i++)
L[i] = A[p+i];
for(j=0; j<n2; j++)
R[j]=A[q+j+1];
L[i] = MAX;
R[j] = MAX;
i=j=0;
for(k=p; k<=r;k++)
{
if(L[i]<=R[j] )
{
A[k] = L[i];
i++;
}else
{
A[k] = R[j];
j++;
}
}
}
void MergeSort(int A[],int p,int r)
{
int q;
if(p<r)
{
q=(p+r)/2;
MergeSort(A,p,q);
MergeSort(A,q+1,r);
merge(A,p,q,r);
}
}
void main()
{
int A[]= { 4,2,6,5,8,3,7};
int i,j;
for( i=0;i<7;i++)
cout<<A[i]<<endl;
MergeSort(A,0,6);
cout<<"after sort"<<endl;
for( i=0;i<7;i++)
cout<<A[i]<<endl;
}
- 算法代码(2)——分治法排序
- 分治法算法——归并排序
- 基础算法 —— 合并排序(分治法)
- 分治算法—合并排序
- 排序算法--快速排序(分治法)
- 伪代码算法之快速排序(分治排序)
- 基本排序算法(3)——关于分治法及归并排序
- 0004算法笔记——【分治法】合并排序
- 0005算法笔记——【分治法】快速排序
- 0004算法笔记——【分治法】合并排序
- 0005算法笔记——【分治法】快速排序
- 算法09:快速排序——分治法Part5
- 04算法笔记——【分治法】合并排序
- 算法笔记——【分治法】快速排序
- 算法笔记——【分治法】合并排序
- 0004算法笔记——【分治法】合并排序
- 算法笔记0005——【分治法】快速排序
- 0004算法笔记——【分治法】合并排序
- spring aop pointcut expression 例子说明
- iphone里的动画过渡
- 蔡勒(Zeller)公式(计算星期)
- 数据结构-二叉树(1)
- CTex listings宏包出错undefined control sequence,换成verbatim解决问题
- 算法代码(2)——分治法排序
- hdoj 1615
- 菜鸟学iPhone开发-计算器实例
- iphone开发笔记(-) 退回输入键盘:自定义颜色:隐藏状态栏:
- 开博
- field module的on input和on request区别
- 【poj】1363-Rails
- Iphone SDK 实例--新手必读
- LHF Objective-C语法(9)内存管理