面试题目集锦 -- 排序算法
面试过程中,免不了会问一些比较基础的问题,而这些基础的问题肯定要说到排序上去。
我们知道,排序算法包含插入,选择,冒泡,快速,归并,堆排序等等,大多时候,我们在面试的时候,最常问的排序算法是堆,快速和归并排序,其他的几种相对简单,问的较少,那么,我们只需要在面试前把它们都弄懂然后自己在纸上写出来就可以了。在写这些算法的时候,我查了很多的资料,也看了很多文章,毕竟排序算法非常经典,所以,在这上面花的时间还挺多的。不过,我发现有些排序算法的实现偏复杂,而且不好理解,于是,我整理并写下了这些常用的排序算法,个人感觉还是比较容易理解的。
当然,我也把算法的实现上传到了这个页面,大家可以去下载(免积分):
http://download.csdn.net/detail/dlutbrucezhang/8071405
这里,我仅是贴出实现代码的头文件,方便看到这里有哪些排序算法的实现:
#ifndef SORT_ALGORITHM_H
#define SORT_ALGORITHM_H/*交换函数*/
void swap(int &a, int &b);/*冒泡排序*/
void BubbleSort(int* array, int n);/*快速排序*/
int partition(int* array, int low, int high);
void QuickSort(int* array, int low, int high);/*选择排序*/
void SelectSort(int* array, int n);/*堆排序*/
void createHeap(int* array, int n);
void adjustHeap(int* array, int i, int n);
void HeapSort(int* array, int n);/*插入排序*/
void InsertSort(int* array, int n);/*归并排序*/
void mergeArray(int* array, int first, int mid, int last, int* temp);
void mergeOrder(int* array, int first, int last, int* temp);
void MergeSort(int* array, int n);/*希尔排序*/
void shellInsert(int* array, int d, int n);
void ShellSort(int* array, int n);#endif // !SORT_ALGORITHM_H
面试题目集锦 -- 排序算法相关推荐
- 面试题目_经典面试题目「回溯算法」解数独
解数独,理解二维递归是关键! 通知:我将公众号文章和学习相关的资料整理到了Github :https://github.com/youngyangyang04/leetcode-master,方便大家 ...
- BAT等公司高薪招聘Android开发面试题目集锦
整理过的50道面试题目 1.listView的优化方式 重用convertView viewHolder static class viewHolder 在列表里面有图片的情况下,监听滑动不加载图片 ...
- 排序算法 - 面试中的排序算法总结
排序算法总结 查找和排序算法是算法的入门知识,其经典思想可以用于很多算法当中.因为其实现代码较短,应用较常见.所以在面试中经常会问到排序算法及其相关的问题.但万变不离其宗,只要熟悉了思想,灵活运用也不 ...
- python算法题排序_python-数据结构与算法- 面试常考排序算法题-快排-冒泡-堆排-二分-选择等...
算法可视化网站推荐---->visualgo 0.面试题中的排序算法 一些排序算法可能在工作中用的会比较少,但是面试却是不得不面对的问题.算法有助于提高我们对数据结构的理解以及提高自己的逻辑能力 ...
- 手撕前端面试之经典排序算法
作者 | 霍语佳 责编 | 欧阳姝黎 排序算法是面试中的高频考察点,我们需要熟练掌握.本文整理了最经典.最常用的排序算法并且搭配了动图和视频,希望能够帮助你更加轻松的理解它们. 首先,根据 ...
- 面试必考排序算法最详细介绍,包含动画演示、大厂真题(每天一遍,面试必过)
文章目录 前言 六大排序算法 冒泡排序 选择排序 插入排序 希尔排序 归并排序 快速排序 总结 一图解释所有 关于时间复杂度 关于稳定性 大厂面试真题 前言 不知道大家有没有发现,排序算法的考核在校招 ...
- 面试题目集锦--链表
前段时间一直在忙着找工作,在面试中也遇到了大量的算法题目,其中,问的比较多的是二叉树和链表之类的题目,在这里,我就把前段时间写的链表面试题贴出来,当然,由于题目很多,我只是在这里贴出它的类构造,不贴出 ...
- 面试题目集锦--二叉树
面试过程中,问的最多的题目大致是可以分为两类的,一类是链表,另一类就是二叉树了,树(普通数)和B(+-)树由于稍难些,问的不是很多. 往往在问到二叉树的时候,一般都是用递归的解 ...
- 转-python面试题目集锦(100道部分附答案)
Python爬虫人工智能教程:www.python88.cn 编程资源网:www.python66.cn 最近收集整理了100道python真实面试笔试题,并自己做了一些,希望能帮助大家,顺利早日找到 ...
最新文章
- linux下备份mssql文件,linux服务器怎么定时备份mysql的sql文件数据
- nginx:413 Request Entity Too Large 及 修改 PHP上传文件大小配置
- HDU 2087剪花布条 KMP
- 服务器中安装多版本的cuda
- Oracle 警告:Weblogic 服务器中含有多个可遭远程利用的严重漏洞
- python基础--函数作用域
- 基于DS3231实时时钟模块的stm32简易闹钟
- 三维随机介质模型matlab,基于随机介质理论的复合材料孔隙二维形貌几何仿真
- ArcCatalog导出数据
- 号外号外!兹有第一届区块链技术及应用峰会(BTA)·中国首轮议题抢鲜看
- matlab编程求解一元高次方程
- Python 爬取微信公众号文章和评论 (有源码)
- 干货分享丨精心整理了份Python知识点高清速查表!太受用了!
- iframe 动态 加载 src
- layui.table(表格)跨页多选
- 作为一名视觉工程师该怎么学习?
- MATLAB自相关矩阵计算方法
- 铜三铁四,京东裁员,offer毁约,对此我们真的没办法吗?
- 第四代计算机主要采用什么作为逻辑开关元件,第四代计算机主要采用什么作为逻辑开关元件?...
- 关于img标签中data:image/XXX;base64图片内容提取