
算法
文章平均质量分 83
算法题
CAT_cwds
笨鸟先飞,欢迎大佬指摘文章
展开
-
算法-合并排序
上周分析了排序算法,这周分析合并排序算法。思想合并排序也是分治算法中的一种思想,将一组数组从中分成两组,再将两组各自从中分成四组,依次循环分组,直到每组只剩下单独的只包含一个数字的数组。之后再将各个数组依次按照大小排序合并成一组,就成为了有序的数组。画图分析先展示分组,以长度为9的数组为例:[9,5,2,7,12,4,3,1,11]先拆分数据:1.取中间下标mid = (0+8)/2 = 4,因此分为两个数组:下标0~4,5~8两组。2.分0~4下标的数组,mid=(0+原创 2021-02-05 15:07:42 · 1445 阅读 · 1 评论 -
算法-快速排序
最近在学习算法,算法主要有回溯法,贪心法,动态规划法,分治法等。其中分治法又有二分查找,合并排序,快速排序等算法,今天学了一个比较重要的算法:快速排序。整理一下学习内容,如下:题目:给出一个数组:[10,8,5,4,2,1,3,6,7],...原创 2021-01-30 16:07:33 · 290 阅读 · 2 评论 -
编程题:小易的升级之路
题目描述:小易经常沉迷于网络游戏.有一次,他在玩一个打怪升级的游戏,他的角色的初始能力值为 a.在接下来的一段时间内,他将会依次遇见n个怪物,每个怪物的防御力为b1,b2,b3...bn. 如果遇到的怪物防御力bi小于等于小易的当前能力值c,那么他就能轻松打败怪物,并 且使得自己的能力值增加bi;如果bi大于c,那他也能打败怪物,但他的能力值只能增加bi 与c的最大公约数.那么问题来了,在一系列的锻炼后,小易的最终能力值为多少?输入描述:对于每组数据,第一行是两个整数n(1≤n<1000原创 2020-12-17 17:16:57 · 255 阅读 · 0 评论 -
输入一个链表,反转链表后,输出新链表的表头(Java)
今天在牛客网上做了一个算法题,不知道是不是一孕傻三年的原因,竟然被一道难度为简单的算法题难住了。我觉得我可能不是做算法的这块料儿,还是老老实实的做java吧。言归正传,我研究了半天,一定要记录一下:题目:说一下这个的解题思路:刚开始我以为这个ListNode是个类似于java的集合类,我当即就想到了lamda表达式反转字符串。马上在右侧奋笔疾书,发现这个ListNode没有lamda方法。于是我觉得我想多了,这是个算法题怎么可能考察lamda表达式,傻帽儿。我看了一下左边,原来有个说原创 2020-12-16 20:10:32 · 805 阅读 · 1 评论