![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
文章平均质量分 66
Sweet_wen
加油,加油,加油
展开
-
每天几道笔面试题
给出一个数组,如 [7864, 284, 347, 7732, 8498],现在需要将数组中的数字拼接起来,如按顺序依次拼接为:786428434777328498,数组中的数字拼接顺序可以任意,编写程序,返回「最大的可能拼出的数字」//可以使用排序,按照数字大小进行排列这个数字就是最大的$tmp = implode($arr); //数组转字符串$dust = str_split($tmp);rsort($dust);//数组转字符串$str = implode($dust);...原创 2020-05-14 20:12:50 · 270 阅读 · 0 评论 -
二叉树的前序,中序,后序的递归与非递归遍历
二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三种遍历中,前序和中序遍历的非递归算法都很容易实现,非递归后序遍历实现起来相对来说要难一点。 1.前序遍历 (1)递原创 2017-05-07 23:57:28 · 549 阅读 · 0 评论 -
常用排序的实现及比较
排序的稳定性:假设在待排序的序列中存在多个相同关键字的记录,经过排序,这些关键字的位置保持不变,则称这个排序算法是稳定的,否则是不稳定的。 1. 选择排序(不稳定) 选择排序是一种直观的排序算法,每次找到最大的或者最小的数与,存放在序列的起始元素,知道所有的元素都排序结束。选择排序是不稳定的,假设5,5,3进行排序,3比第一个5小交换位置,导致第一个5摞到第二个5后面,所以选择排序是不稳定的排序原创 2017-07-30 19:01:15 · 302 阅读 · 0 评论 -
二分查找
二分查找又称折半查找,优点是比较次数少,查找速度快,平均性能好;其缺点是要求待查表为有序表,且插入删除困难。因此,折半查找方法适用于不经常变动而查找频繁的有序列表。二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]与x做比较,如果x=a[n/2],则找到x,算法中止;如果xclass Test{public:int binary_search(int* arr, int len原创 2017-08-11 18:03:46 · 289 阅读 · 0 评论