算法
文章平均质量分 92
中年失业码农
软件设计者
博客地址http://www.wangfan.xyz
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
java数组转集合ArrayList的坑
如何将一个数组转换成一个集合,我们首先想到的一个方法是通过java自带的api实现,Arrays.asList(T t);使用这种方式将数组转成集合的话,需要特别注意,这个api返回的ArrayList并不是我常用的java.util.ArrayList,他是一个Arrays的一个内部类,java.util.Arrays$ArrayList这个类被定义长一个定长的集合,他直接集成AbstractList类,并且没有重写,add,del,set这些方法,所以使用这个api转换数组集...原创 2020-07-08 11:44:33 · 269 阅读 · 0 评论 -
常见的集中排序算法(二)快速排序(quick sort)堆排序(Heepsort)
快速排序(quick sort)快速排序是一种高效的排序方式,它是一种分区交换排序方式,它类似冒泡,danshi相比于冒泡逐个比较替换元素的方式,它更高效,直接交换元素。并且根据设定的基准值分区自治,程序思路首先取第一个元素做基准值,用来区分高位区域,和地位区域。从右边往左边找,找到一个小于基准值的元素,交换到低位元素从左边往右边找,找到一个大于基准值的,交换到高位区域元素如此以往,根据基准值分区,在得到一个新的基准值,不停分区,不停比较交换,最终排序完成。使用递归完成此操作。S.原创 2020-06-28 14:04:13 · 355 阅读 · 0 评论 -
面试笔试题目:开关灯泡小算法
题目:初始时有 n 个灯泡关闭。 第 1 轮,你打开所有的灯泡。 第 2 轮,每两个灯泡你关闭一次。 第 3 轮,每三个灯泡切换一次开关(如果关闭则开启,如果开启则关闭)。第 i 轮,每 i 个灯泡切换一次开关。 对于第 n 轮,你只切换最后一个灯泡的开关。 找出 n 轮后有多少个亮着的灯泡。这道题目,分析出来,其实就第n-1轮,每一轮按照固定的规律按开关,第n轮,只按最后一个开关。每一轮的规律其实也简单,就是灯泡的位置整除论述,就按一个开关。这里我们假设第后面的灯泡,第一个开关不按,直接从,2,3,开原创 2020-06-15 17:18:51 · 719 阅读 · 0 评论 -
递归与尾递归 recursive & tail recursive
1、什么是递归 编程语言中,函数Func(Type a,……)直接或间接调用函数本身,则该函数称为递归函数。在数学上,关于递归函数的定义如下:对于某一函数f(x),其定义域是集合A,那么若对于A集合中的某一个值X0,其函数值f(x0)由f(f(x0))决定,那么就称f(x)为递归函数。 或者这么说递归递归是为了细分一个任务,将任务拆解成为一个有规律的,有相同解法的问题2、递归能解决什么问题 最常见的额一类算法题目就是求斐波那契数列 pub...原创 2020-06-15 17:06:22 · 517 阅读 · 0 评论 -
常见的几种排序算法(一)
排序引言为什么想起来最近写这一些列的文章,因为最近一个朋友吐槽面试的有6,7年工作经验的员工,连基本的排序都不能实现,所以想了下,如果让自己来做,能不能讲的清楚这一些列的排序。所以就动手写了这一系列的文章,也算是自己了解巩固下。常用的排序算法一、冒泡排序二、选择排序三、插入排序四、快速排序五、堆排序六、归并排序七、基数排序八、希尔排序九、桶排序冒泡排序(Bubble Sort)冒泡排序也称为:沉降排序(SinkingSort),之所以有这两..原创 2020-06-15 17:01:58 · 478 阅读 · 0 评论
分享