10 2012 档案

摘要:题目:请实现一个函数,输入一个整数,输出该数二进制表示中的个数。例如把9表示成二进制是1001,有2位是1。因此如果输入9,该函数输出2。 阅读全文
posted @ 2012-10-19 11:34 xwdreamer 阅读(458) 评论(0) 推荐(0) 编辑
摘要:题目:求字符串的最长非重复子序列。比如字符串“dabaccdeff”,它的最长非重复子序列为“dabcef”这道题目与面试题35:第一个只出现一次的字符非常相似。都可以通过对字符串球哈希来解。View Code #include<iostream>#include <stack> #include<stdlib.h>using namespace std;void print(char *s,int len,char *hashtable);int NoReplicatedSubstring(char *s,int len){ const int table 阅读全文
posted @ 2012-10-13 16:20 xwdreamer 阅读(2497) 评论(0) 推荐(1) 编辑
摘要:题目:输入一棵二叉树的根节点,求该树的深度。从根节点到叶子结点一次经过的结点形成树的一条路径,最长路径的长度为树的深度。根节点的深度为1。解体思路:如果根节点为空,则深度为0,返回0,递归的出口如果根节点不为空,那么深度至少为1,然后我们求他们左右子树的深度,比较左右子树深度值,返回较大的那一个通过递归调用代码实现View Code #include<iostream>#include<stdlib.h>using namespace std;struct BinaryTreeNode{ int m_nValue; BinaryTreeNode* m_pLeft; Bi 阅读全文
posted @ 2012-10-13 14:44 xwdreamer 阅读(25058) 评论(2) 推荐(0) 编辑
摘要:题目:求一个数的质因数分解,比如输入90,输出2*3*3*5。解体思路:要求一个数n的质因数分解,首先求出n以内的所有质数,将其放入prime[]数组内,然后再让prime[i]去除n,如果能够整除,那么这个prime[i]就是n的质因数,否则不是。求prime[]的方法是筛法求素数。代码实现View Code #include<iostream>#include<stdlib.h>using namespace std;bool isPrime(int number);//判断number是否为素数void PrintPrime(int number);//查找0.. 阅读全文
posted @ 2012-10-13 13:49 xwdreamer 阅读(2272) 评论(7) 推荐(2) 编辑
摘要:题目:在数组中的两个数字如果前面一个数字大于后面的数字,则这两个数字组成一个逆序对。输入一个数组,求出这个数组中的逆序对的总数。例如,有一个数组为Array[0..n] 其中有元素a[i],a[j].如果 当i<j时,a[i]>a[j],那么我们就称(a[i],a[j])为一个逆序对。在数组{7,5,6,4}中一共存在5对逆序对,分别是(7,6),(7,5),(7,4),(6,4),(5,4)。参考文献排序算法汇总->归并排序解题思路看到这样的题目,最简单的想法就是遍历每一个元素,让其与后面的元素对比,如果大于则count++,但是这样的时间复杂度是o(n2)。这题有更好的解 阅读全文
posted @ 2012-10-12 21:46 xwdreamer 阅读(15731) 评论(0) 推荐(0) 编辑
摘要:0.参考文献多线程开发1.同步方法与同步代码块在博文多线程开发中提到使用synchronized实现同步有两种方法,一种是同步方法,另外一种是同步代码块。现在根据同样一个问题,分别给出同步方法和同步代码块的实现方法。1.1同步方法View Code package test;public class ThreadDeadLock3 { public static void main(String args[]) { Info info = new Info(); // info作为参数传入两个线程当中 ProducerThread pt = ne... 阅读全文
posted @ 2012-10-08 22:02 xwdreamer 阅读(1938) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示