菜鸟学习数据结构算法之路之快速排序
来源:互联网 发布:矩阵优化 编辑:程序博客网 时间:2024/06/14 00:48
依旧继续数据结构与算法道路,唉,发现这条路越来越难走了,不过也得咬牙坚持下去,程序就是代码加算法组合而成的,想要当好一个程序猿,算法这条路是必不可少的啊,加油吧,我也不知道能不能坚持下去写这些东西。
快速排序是由冒泡排序为基础上改进的一种排序方法,所以优先了解冒泡排序应该上手的会比较快,也是非常常见的一种排序方法,思路其实也很简单,把数组的第一个元素作为key,然后将所有比它小的数都放到它前面,所有比它大的数都放到它后面,理论就是这样,下面上代码~~
#include<iostream>using namespace std;//递归快速排序void quick_sort(int a[], int begin, int end){ if (begin >= end){ return; } int left = begin, right = end; int value = a[left]; //把第一个元素作为参数来比较 while (left < right){ if (a[left + 1 ] < value){ //判断第二个元素是否小于,如果是数值替换 a[left] = a[left + 1]; left++; } else{ swap(a[left + 1], a[right]); //替换函数替换数值 right--; } } a[left] = value; //赋值给中间的数覆盖为第一个元素 quick_sort(a, begin, left - 1); //在中间值的前面的数进行递归再排 quick_sort(a, left + 1, end); //在中间值得后面的数进行递归再排}int main(void){ int arr[] = { 3, 4, 2, 1, 7, 5, 8, 9, 0, 6 }; quick_sort(arr, 0, 9); for (int i = 0; i < 10; i++){ cout << arr[i] << endl; } system("pause"); return 0;}
阅读全文
0 0
- 菜鸟学习数据结构算法之路之快速排序
- 数据结构算法之快速排序
- 数据结构算法之快速排序
- 菜鸟学习数据结构算法之路之翻转数组
- 菜鸟学习数据结构算法之路之折半搜索法
- #算法学习之路#快速排序算法
- 数据结构排序算法之快速排序
- 【数据结构和算法之排序】快速排序
- 数据结构<一> 排序算法之快速排序
- 数据结构学习之排序算法
- 算法学习之快速排序
- 算法学习之快速排序
- 算法学习之排序算法:快速排序
- 算法学习之排序:快速排序算法
- 排序算法学习之快速排序算法
- OC学习之道:数据结构中几种常见的排序算法:选择排序,插入排序.快速排序
- 数据结构与算法之快速排序
- 数据结构与算法之快速排序
- 例子:面对对象
- 网狐荣耀版手机端生成时出现MakeMD5List.exe 应用程序错误的解决办法
- awk实现文件反序输出
- C++引用
- 操作系统-最佳适应算法
- 菜鸟学习数据结构算法之路之快速排序
- ValueError: Only call `softmax_cross_entropy_with_logits` with named arguments (labels=..., logits=.
- 简述“自顶向下,逐步求精”——面向过程程序设计方法
- leetcode 659. Split Array into Consecutive Subsequences
- 移动端H5一些小坑(持续更新)
- HashMap的底层原理分析二
- 操作系统实验之处理机调度
- 数据结构--栈的基本操作
- Mysql| Mysql分组函数