mergesort
来源:互联网 发布:php 通过域名获取ip 编辑:程序博客网 时间:2024/06/18 11:49
推荐慕课网,刘宇波老师《算法与数据结构》链接:http://coding.imooc.com/class/71.htmlmergesort 课堂笔记/* */#include <cstdio>#include <iostream>using namespace std;template<typename T>void merge(T arr[],int l,int mid,int r){ T *aux = new T[r-l+1]; for(int i = l; i <= r; i++) aux[i-l] = arr[i]; int i = l, j = mid+1; for(int k = l; k <= r; k++) { if(i > mid){ //左半部分元素处理完毕 arr[k] = aux[j-l]; j ++; } else if(j > r){ //右半部分元素处理完毕 arr[k] = aux[i-l]; i ++; } else if(aux[i-l] < aux[j-l]){ // 左半部分元素 < 右半部分元素 arr[k] = aux[i-l]; i ++; } else{ // 左半部分元素 >= 右半部分元素 arr[k] = aux[j-l]; j ++; } } delete[] aux;}template<typename T>void mergesort(T arr[],int l,int r){ if(l >= r) return ; int mid = (r - l)/2 + l; mergesort(arr,l,mid); mergesort(arr,mid+1,r); merge(arr,l,mid,r);}int main(){ int arr[] = {8,6,4,2,9,7,1,3,5}; int n = sizeof(arr)/sizeof(arr[0]); mergesort(arr,0,n-1); for(int i = 0; i < n; i++) printf("%d ",arr[i]); }
阅读全文
0 0
- MergeSort
- mergesort
- MergeSort
- mergesort
- mergesort
- Mergesort
- mergesort
- mergeSort
- mergeSort
- mergesort
- MergeSort
- MergeSort
- MergeSort
- MergeSort
- Mergesort
- Mergesort
- mergeSort
- mergesort
- MySQL语句问题
- 优化排序之快速排序
- js完整笔记--js面向对象编程
- 9269:Big String超级字符串
- 二叉树的扩展——主要方法和基本算法等
- mergesort
- 希尔排序
- 程序员应该避免的5种代码注释
- Hibernate一级缓存(补)
- 希尔排序
- Vue.js 组件
- mongodb(一):在linux服务器上的安装和部分基础操作
- SpringBoot集成ActiveMQ
- 深入理解PHP:高级技巧、面向对象与核心技术(原书第3版) -- 设计模式之策略模式