摘要:
题目描述 给定一颗二叉搜索树,请找出其中的第k小的结点。例如, 5 / \ 3 7 /\ /\ 2 4 6 8 中,按结点数值大小顺序第三个结点的值为4。 思路:二叉搜索树就是二叉排序树,也叫二叉查找树。 其中序遍历就是顺序的。 我的代码: TreeNode* KthNode(TreeNode* p 阅读全文
摘要:
题目描述 给定一个数组和滑动窗口的大小,找出所有滑动窗口里数值的最大值。例如,如果输入数组{2,3,4,2,6,2,5,1}及滑动窗口的大小3,那么一共存在6个滑动窗口,他们的最大值分别为{4,4,6,6,6,5}; 针对数组{2,3,4,2,6,2,5,1}的滑动窗口有以下6个: {[2,3,4] 阅读全文
摘要:
一 . 僵尸进程: 子进程退出,父进程没有回收子进程资源(PCB),则子进程变成僵尸进程 处理僵尸进程的方法:wait 和 waitpid 调用wait和waitpid不仅可以获得子进程的终止信息,还可以使父进程阻塞等待子进程终止,起到进程间同步的作用。 1. waitpid的原型: 第一个参数pi 阅读全文
摘要:
一.fork:子进程是父进程的一个拷贝,子进程获得同父进程相同的数据,但是同父进程使用不同的数据段和堆栈段。 特点:调用一次,返回两次。成功则在父进程中返回子进程ID,在子进程中返回0。失败则返回-1。 返回后都执行fork之后的语句。 例如:创建4个子进程,每个子进程都输出自己的pid和父进程的p 阅读全文
摘要:
题目描述 从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10位数字本身,A为1,J为11,Q为12,K为13,而大王,小王可以看成任意数字。为了方便我们将大小王看成0。 思路: 1.找出5张牌中得大小王,即0的个数 2.将牌排序,找出相邻牌中的空隙数 3.如果空缺的总数小于 阅读全文
摘要:
题目描述 请实现一个函数用来找出字符流中第一个只出现一次的字符。例如,当从字符流中只读出前两个字符"go"时,第一个只出现一次的字符是"g"。当从该字符流中读出前六个字符“google"时,第一个只出现一次的字符是"l"。 输出描述: 如果当前字符流没有存在出现一次的字符,返回#字符。 请实现一个函 阅读全文
摘要:
题目描述 请实现一个函数用来判断字符串是否表示数值(包括整数和小数)。例如,字符串"+100","5e2","-123","3.1416"和"-1E-16"都表示数值。 但是"12e","1a3.14","1.2.3","+-5"和"12e+4.3"都不是。 思路:ScanDigit()函数为判断是 阅读全文
摘要:
题目描述 请实现一个函数用来匹配包括'.'和'*'的正则表达式。模式中的字符'.'表示任意一个字符,而'*'表示它前面的字符可以出现任意次(包含0次)。 在本题中,匹配是指字符串的所有字符匹配整个模式。例如,字符串"aaa"与模式"a.a"和"ab*ac*a"匹配,但是与"aa.a"和"ab*a"均 阅读全文
摘要:
题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1]。不能使用除法。 思路: B[i]的值可以看作图中的矩阵中每行的乘积。 我们把它分为1的左边和1的右边的 阅读全文