码迷,mamicode.com
首页 >  
搜索关键字:java数据结构算法    ( 20个结果
9.5位操作(六)——交换某个整数的奇数位和偶数位,使用指令越少越好
/**  * 功能:交换某个整数的奇数位和偶数位,使用指令越少越好(即,位0与位1交换,位2与位3交换,以此列推)。  */ /** * 思路:先操作奇数位,再操作偶数位。将数字n的奇数位右移1位,偶数位左移1位。 * @param x * @return */ public static int swapOddEvenBits(int x){ //奇数位右移...
分类:其他好文   时间:2015-08-06 15:09:04    阅读次数:112
9.5位操作(三)——给定一个正整数,找出与其二进制表示中1的个数相同,且大小最接近的那两个数
/**  * 功能:给定一个正整数,找出与其二进制表示中1的个数相同,且大小最接近的那两个数。  * (一个略大一个略小。)  */ 三种方法: 方法一:蛮力法 方法二:位操作法 /** * 方法:位操作法 * 思路:获取后一个较大的数 * 1)计算c0和c1。c1是拖尾1的个数,c0是紧邻拖尾1的作坊一连串0的个数。 * 2)将最右边、...
分类:其他好文   时间:2015-08-06 13:17:24    阅读次数:236
9.5位操作(四)——解释代码(n&(n-1))==0的具体含义
题目:解释代码(n&(n-1))==0的具体含义 1)(A&B)==0的含义 A和B的二进制表示的同一位置绝不会同为1。 2)n和n-1 若n的最低有效位为1,减去1后为0,其余为均相同,不符合要求。n的最低有效位为0,减去1时,必须向高位借1。 3)(n&(n-1))==0的含义 n的最高有效位为1,其余位为0。因此,n的值是2的某次方。 所以,(n...
分类:其他好文   时间:2015-08-06 13:15:27    阅读次数:170
9.3栈和队列(七)——用两个栈来实现一个队列
/**  * 功能:用两个栈来实现一个队列。  */ import java.util.*; /** * 思路:需要修改peek()和pop(),以相反顺序执行操作。可以利用第二个栈来反转元素的次序。 * stackNewest顶端为最新元素,stackOldest顶端为最旧元素,利用两个栈的元素的转移来实现。 * */ public class MyQuene1 { ...
分类:其他好文   时间:2015-08-04 19:26:51    阅读次数:132
9.3栈和队列(五)——汉诺塔问题
/**  * 功能:汉诺塔问题  * 描述:有3根柱子及N个不同大小的穿孔圆盘,盘子可以滑入任意一根柱子。一开始,  *           所有盘子自底向上从大到小依次套在第一根柱子上(即每一个盘子只能放在更大的盘子上面)。  *          移动圆盘时有以下限制:  *          1)每次只能移动一个盘子。  *          2)盘子只能从柱子顶端滑出移到下一根...
分类:其他好文   时间:2015-08-04 17:16:24    阅读次数:122
栈和队列常见题型(java版)
栈和队列常见题型: 实现栈和实现队列。 两个栈实现一个队列。 设计栈,使得pop,push和min时间复杂度为O(1)。 滑动窗口的最大值。 栈的进出序列。...
分类:编程语言   时间:2015-07-26 22:45:25    阅读次数:233
java数据结题之-喝可乐的问题
问题如下:黑马程序员训练营入学考试题10、28人买可乐喝,3个可乐瓶盖可以换一瓶可乐,那么要买多少瓶可乐,够28人喝?假如是50人,又需要买多少瓶可乐?(需写出分析思路)我的思路1:利用逆向思维和全局思维,假如28个都喝到了可乐,那么会有28个盖子,就可以兑换28/3=9(截..
分类:编程语言   时间:2015-06-18 20:09:32    阅读次数:156
java数据结构题之约瑟夫问题
约瑟夫问题:转载自约瑟夫问题据说着名犹太历史/数学家约瑟夫(Josephus)有过以下的故事:在罗马人占领乔塔帕特後,40个犹太士兵与约瑟夫躲到一个洞中,眼见脱逃无望,一群人决定集体自杀,约瑟夫建议自杀方式,41个人排成圆圈,由第1个人开始报数,每报数到5的人就必须自杀,..
分类:编程语言   时间:2015-06-04 17:35:26    阅读次数:136
图的邻接表表示、广度优先、深度优先搜索
图的邻接表表示、广度优先、深度优先搜索...
分类:其他好文   时间:2015-05-18 22:59:13    阅读次数:168
【数据结构与算法】二叉树广度遍历
二叉树的广度遍历想想还是比较简单的,利用队列存储当前结点的左儿子和右儿子用作未来的访问。 代码实现 /** * 源码名称:TreeBFS.java * 日期:2014-08-25 * 程序功能:二叉树广度遍历 * 版权:CopyRight@A2BGeek * 作者:A2BGeek */ import java.util.LinkedList; import java.u...
分类:其他好文   时间:2014-08-25 11:53:44    阅读次数:185
20条   上一页 1 2
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!