自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

转载 每周一道算法题013:电影推荐

问题:A、B、C三位用户都喜欢看电影,他们给自己所喜欢的电影类型打了如下的分:ABC喜剧片342动作片435生活片451恐怖片113爱情片451B用户喜欢的电影类型是应该推荐给A还是C?思路:用K最近邻(k-nearest neighbours,KNN)算法来解决找到与B最近的点,如果是A就推荐给A,是C就...

2019-09-03 10:59:47 295

转载 每周一道算法题012:最长公共子序列

问题:如果两个单词很像,其实是他们有更长的公共子序列。求以下几组单词的最长公共子序列的长度1.fish和fosh2.recommend和reccommend3.fish和vista思路:与最长公共子串很类似,但子序列遇到不同的字符时不能将相同字符组计数清零。需要连续计数,此时,需要将当前位置左侧或上侧的最大值填入到当前位置。解答:php:// 找出两个单词的最长公共子序列funct...

2019-09-02 11:00:32 187

转载 每周一道算法题011:最长公共子串

问题:求以下几组单词的最长公共子串的长度1.fish和fosh2.fish和hish3.fish和vista思路:可以用表格法,横纵坐标分别是两个单词,如果字符相同,就用左上角的数字加1,最后取表格中的最大值。解答:php:<?php// 找出两个单词的最长公共子串function findLongestSubString($word1, $word2){ $le...

2019-08-29 18:16:03 170

转载 golang中slice处理遇到的一个关于引用的坑

前两天在解扫地机器人算法的问题时,遇到一个坑部分代码如下:func move2(startPoint Point) [][]Point { allFootPrint := [][]Point{{startPoint}} for i := 0; i < N; i++ { allNewFootPrint := make([][]Point, 0) ...

2019-08-22 15:06:53 547

转载 每周一道算法题010:扫地机器人路径统计

问题:假设有一款不会反复清扫同一个地方的机器人,它只能前后左右移动。举个例子,如果第1次向后移动,那么连续移动3次时,就会有以下9种情况(图6)。又因为第1次移动可以是前后左右4种情况,所以移动3次时全部路径有9×4=36种。求这个机器人移动12次时,有多少种移动路径?思路:尝试用递归和非递归两种办法来解。递归思路:从起点开始,在各方向移动1步,如果移动后的点不在当前的路径中,就加入到...

2019-08-22 10:53:10 1048

转载 每周一道算法题009:找二进制对称的日期

题目:把年月日表示为YYYYMMDD这样的8位整数,然后把这个整数转换成二进制数并且逆序排列,再把得到的二进制数转换成十进制数,求与原日期一致的日期。求得的日期要在上一次东京奥运会(1964年10月10日)到下一次东京奥运会(预定举办日期为2020年7月24日)之间。思路:从起始时间开始逐天累加,对每一天进行进制转换并反转,然后比较,如果相同就输出,不同就继续,直至到达结束时间。解答:p...

2019-08-19 13:02:11 212

转载 每周一道算法题008:考拉兹猜想

问题:考拉兹猜想对自然数n循环执行如下操作。 •n是偶数时,用n除以2 •n是奇数时,用n乘以3后加1如此循环操作的话,无论初始值是什么数字,最终都会得到1(会进入1 → 4 → 2 → 1这个循环)。现在设定初始值为偶数时,对其进行乘以3后加1,后续操作不变。如4 → 13 → 40 → 20 → 10 → 5 → 16 → 8 → 410000以内的偶数中,这样能在到达1...

2019-08-12 10:56:24 535

转载 每周一道算法题007:兑换零钱

问题:已知可兑换的零钱种类有1元,5元,10元,20元4种,现在有100块钱要换成零钱且总数量少于15张,有几种换法?分别是什么?思路:已知有[1,5,10,20]这样的一个可选数据集S,现在要从中取出n个数,每个数的张数为a,使得a1xn1+a2xn2+...aixni = 100。最大的面额是20,总共需要100/20=5张,这是最少的张数,所以循环的下限是5,上限题目已经限定了,是1...

2019-08-08 19:02:25 613

转载 每周一道算法题006:抽签组合

问题:有如下3支队伍,每个队伍都有2名队员。team1:A,B;team2:C,D;team3:E,F;现在每个队出1个人,组成一个队去探险,请列出所有的组队方式。思路:这就是一个组合的问题,每个队里挑一人,那么总共应该有2x2x2=8种组合方式。如果暴力求解,那就是三层循环嵌套。但如果问题扩展一下,变成10个队,每个队10人,就无法暴力求解了,至少代码是没有扩展性的。有如下一种思路:...

2019-08-02 20:20:36 185

转载 每周一道算法题005:切木棒

问题:假设要把长度为n厘米的木棒切分为1厘米长的小段,但是1根木棒只能由1人切分,当木棒被切分为3段后,可以同时由3个人分别切分木棒。求最多有m个人时,最少要切分几次。譬如n=8,m=3时如下图所示,切分4次就可以了。求当n=20,m=3时的最少切分次数。求当n=100,m=5时的最少切分次数。思路:这道题最难的不是算法,而是理解题意。木棒刚开始只有1根,题目规定“1根木棒只能由1人切分...

2019-08-02 09:48:51 377

转载 每周一道算法题004:背包

问题:假设你要去野营。你有一个容量为6磅的背包,需要决定该携带下面的哪些东西。其中每样东西都有相应的价值,价值越大意味着越重要: •水(重3磅,价值10); •书(重1磅,价值3); •食物(重2磅,价值9); •夹克(重2磅,价值5); •相机(重1磅,价值6)。请问携带哪些东西时价值最高?思路:这是一个典型的背包问题,求解此类问题,通常会使用动态规划法。不要被名字吓到...

2019-07-24 14:28:07 990

转载 每周一道算法题003:翻牌

问题:有100张写着数字1~100的牌,并按顺序排列。最开始所有牌都是背面朝上放置。某人从第2张牌开始,隔1张牌翻牌。然后第2, 4, 6, …,100张牌就会变成正面朝上。接下来,另一个人从第3张牌开始,隔2张牌翻牌(原本背面朝上的,翻转成正面朝上;原本正面朝上的,翻转成背面朝上)。再接下来,又有一个人从第4张牌开始,隔3张牌翻牌。像这样,从第n张牌开始,每隔n-1张牌翻牌,直到没有可翻动的牌...

2019-07-18 17:49:11 1170

转载 每周一道算法题002:四则运算

问题:求位于1000~9999,满足如下条件的数: 各位数字间加入四则运算符,也可省略,使得按四则运算计算的结果为原数字的各位数逆序排列。例如:351 → 3×51 = 153思路:遍历1000-9999所有的数字,切分并组合运算符,拼成四则运算的算式然后计算。4位数中最大的数是9999,他可以被拆成999+9=1008,逆排后不可能等于原数,减法和除法不可能计算出比原数更大的数,所以只需...

2019-07-15 11:48:27 423

转载 golang中用链表实现栈

node通过prev字段进行关联,stack维护栈顶节点stack.gopackage stacktype Stack struct { top *node length int}type node struct { value interface{} prev *node}// 创建一个栈func New() *Stack { ...

2019-07-12 20:03:29 277

转载 用golang实现的单向链表

复习一下数据结构,用golang来实现单向链表package mainimport "fmt"type Object interface{}type Node struct { Data Object next *Node}type List struct { size uint64 head *Node tail *Node}fu...

2019-07-11 16:34:10 230

转载 每周一道算法题001:回文数

题目:找出大于10的最小的2进制,8进制,10进制都是回文数的最小的数。回文数指的是正读和反读都是一样的数,例如:33,10001,123454321...思路:先转换进制,然后统一处理成字符串进行比较解答:PHPfunction execute(){ $x = 11; while (1) { if ($x == strrev($x) ...

2019-07-11 11:05:32 146

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除