常见的小算法题
文章平均质量分 59
Love_Taylor
莫言君行早,更有早行人
展开
-
螺旋队列问题
一、 程序员面试宝典的一道题目:关于螺旋队列问题。设1点的坐标为(0,0) ,x方向向右为正,y方向向下为正,7为(-1,-1),2的坐标为(1,0),3的坐标为(1,1);编程实现输入任意一点坐标(x,y),输出对应的数字。 21 22 … 20 7 8 9 10 19 6 1 2 11 18 5 4 3 2 17 16原创 2017-03-05 20:48:03 · 355 阅读 · 0 评论 -
快数排序算法
刚了解了一下简单的桶排序,现在我写一下快速排序的完整代码,思想大家应该都懂,每一轮设置一个基准数,然后大于基准数的放左边,小于放右边。直接上代码吧: public class Test { public voidquicksort(int a[],int left,int right){ if(left>right)return ; inttemp=a[left原创 2017-03-05 21:55:38 · 302 阅读 · 0 评论 -
斐波拉契数列
public class Test { public static void main(String[] args) { List ls=new ArrayList();//下标从0开始 ls.add(1); ls.add(1); //假设有斐波拉契数列10个数,从第三个数开始f(n)=f(n-1)+f(n-2); for(int i=2原创 2017-03-05 22:15:13 · 251 阅读 · 0 评论 -
吸血鬼数字
昨天在Thinking in Java中看到一个练习题,吸血鬼数字。可以用暴力求解,但觉得不太好,在它书的课后习题的pdf中找到了,还挺好的,供大家参考。 思路:他是利用两个次数为100的for循环,拼接成一个四位数。然后将四位数的每一位提取出来放入productDigit数组中,将两个二位数的每位提取出来,放入startDigit数组中,最后再比较数组中的数是否相等(不必按顺序),若都原创 2017-03-06 09:40:18 · 267 阅读 · 0 评论 -
纸牌游戏-小猫钓鱼
这题是我再一个一篇文章看到的,他用c写的,我该用java来测试一下。一方面熟悉一下集合Queue和Stack,另一方面看一下这个算法。 题目:假设游戏开始时q1和q2都有6张牌,分别顺序为2 4 1 2 5 6和3 1 3 5 6 4,游戏规则为轮流出牌,当谁出牌与桌子上的目标牌有相同时,则可以收掉与桌面目标牌之间的几张牌,全部放在牌的尾部。但是除了桌面的那张目标牌。当谁手上没有牌时,则原创 2017-03-06 11:43:35 · 942 阅读 · 0 评论