L_J_SHOU

上一页 1 2 3 4 5 6 7 8 ··· 10 下一页

2014年3月16日

C++ Primer----一个关于 vector 的有趣的问题

摘要: 大家请看下面的代码,请问 输出结果是??/** * @file vector-destroy.cc * @brief an interesting problem regarding vector * @author shoulinjun@126.com * @version 0.1.00 * ... 阅读全文

posted @ 2014-03-16 20:21 L_J_SHOU 阅读(143) 评论(0) 推荐(0)

2014年3月14日

Design Patterns----简单的工厂模式

摘要: 实例:实现一个简单的计算器。实现加减乘除等操作。。operator.h 文件// copyright @ L.J.SHOU Mar.13, 2014// a simple calculator using Factory Design Pattern#ifndef OPERATOR_H_#defin... 阅读全文

posted @ 2014-03-14 16:56 L_J_SHOU 阅读(134) 评论(0) 推荐(0)

2014年3月12日

Interview----用最快的方法计算 Fibonacci 数

摘要: 输入 n, 用最快的方法求该 Fibocacci 数列的第 n 项。方法1: 递归,非常慢方法2: 迭代,因此计算 f[1] , f[2], f[3] ,,,, 复杂度 O(N)方法3:采用以上公式,计算 n 幂次的时候,采用二分的思想。可将复杂度提高到 O(lgN)具体代码如下。// copyri... 阅读全文

posted @ 2014-03-12 22:08 L_J_SHOU 阅读(175) 评论(0) 推荐(0)

2014年3月11日

算法----约瑟夫环问题

摘要: 约瑟夫环是一个数学的应用问题:已知n个人(以编号0,1,2, ... n-1 分别表示)围坐在一张圆桌周围。从编号为0的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。求最后一个出列的人的序号。。方法 1:模拟游戏。利用数... 阅读全文

posted @ 2014-03-11 22:06 L_J_SHOU 阅读(167) 评论(0) 推荐(0)

2014年3月10日

Interview----First single charactor

摘要: 题目:在一个字符串中找到第一个只出现一次的字符。如输入 abaccdeff,则输出 b。分析:这道题是 2006 年 google 的一道笔试题。分析:用 Hash, 时间和空间复杂度是 O(N)当然,如果字符是 ASCII 编码的话,可以开一个 256长的数组来对每个字符出现的次数进行记录。下面的... 阅读全文

posted @ 2014-03-10 21:02 L_J_SHOU 阅读(133) 评论(0) 推荐(0)
数据结构《15》----二叉树的层序遍历

摘要: 输入一颗二元树,从上往下按层打印树的每个结点,同一层中按照从左往右的顺序打印。例如输入 8 / \ 6 10 / \ / \ 5 7 9 11输出 8 6 10 5 7 9 11。分析:与二叉树其他的三种遍历不同,层序遍历使用的不是栈,而是队列。// copyright @ L.J.SHOU Mar... 阅读全文

posted @ 2014-03-10 19:37 L_J_SHOU 阅读(160) 评论(0) 推荐(0)
Interview----将一棵二叉树转换成其镜像

摘要: 题目:输入一颗二元查找树,将该树转换为它的镜像,即在转换后的二元查找树中,左子树的结点都大于右子树的结点。用递归和循环两种方法完成树的镜像转换。例如输入: 8 / \ 6 10 / \ / \5 7 9 11输出: 8 / \ 10 6 / \ / \11 9 7 5分析:1. 递归,类似与先... 阅读全文

posted @ 2014-03-10 19:03 L_J_SHOU 阅读(167) 评论(0) 推荐(0)

2014年3月8日

STL源码分析《4》----Traits技术

摘要: 在 STL 源码中,到处可见 Traits 的身影,其实 Traits 不是一种语法,更确切地说是一种技术。STL库中,有一个函数叫做 advance, 用来将某个迭代器(具有指针行为的一种 class)移动某个给定的距离。声明如下:template // 将迭代器向前移动 d 单位void ad... 阅读全文

posted @ 2014-03-08 18:20 L_J_SHOU 阅读(254) 评论(0) 推荐(0)

2014年3月7日

STL源码分析《3》----辅助空间不足时,如何进行归并排序

摘要: 两个连在一起的序列 [first, middle) 和 [middle, last) 都已经排序,归并排序最核心的算法就是 将 [first, middle) 和 [middle, last) 在O(N)时间内合并成一个有序数组。但是合并的过程中一般需要 m + n 的额外辅助空间。其中, m 、 ... 阅读全文

posted @ 2014-03-07 21:40 L_J_SHOU 阅读(363) 评论(0) 推荐(0)

2014年3月5日

Interview----2 sum

摘要: 题目:输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。要求时间复杂度是 O(n)。如果有多对数字的和等于输入的数字,输出任意一对即可。例如输入数组 1、2、4、7、11、15 和数字 15。由于 4+11=15,因此输出 4 和 11。分析:给出两种算... 阅读全文

posted @ 2014-03-05 22:22 L_J_SHOU 阅读(160) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 8 ··· 10 下一页