- 博客(18)
- 资源 (1)
- 收藏
- 关注
原创 利用pthread_cond_timedwait实现sleep
在libc的info描述如下:(info sleep) On some systems, sleep' can do strange things if your program uses SIGALRM’ explicitly. Even if SIGALRM' signals are being ignored or blocked whensleep’ is called, slee
2015-09-17 20:01:24 914
原创 pthread_cancel的带来的一个死锁问题(验证)
代码来自:http://blog.csdn.net/wwyyxx26/article/details/9018473 如下:test_deadlock.c#include <unistd.h>#include <pthread.h>#include <stdio.h>#include <stdlib.h>pthread_mutex_t mutex = PTHREAD_MUTEX_INITIA
2015-09-17 16:32:09 1220
原创 Lintcode(7)-删除元素
Q: Remove Element. Given an array and a value, remove all occurrences of that value in place and return the new length. The order of elements can be changed, and the elements after the new length do
2015-06-29 10:38:32 482
原创 Lintcode(6)-最长公共前缀
Q: 给k个字符串,求出他们的最长公共前缀(LCP) 在 “ABCD” “ABEF” 和 “ACEF” 中, LCP 为 “A” 在 “ABCDEFG”, “ABCEFG”, “ABCEFA” 中, LCP 为 “ABC” A: 稍微利用一下string.at抛异常。- -!class Solution {public: /** * @param strs: A li
2015-06-26 11:14:30 470
原创 Lintcode(5)-最长公共子串
Q: 给出两个字符串,找到最长公共子串,并返回其长度。 给出A=“ABCD”,B=“CBCE”,返回 2 子串的字符应该连续的出现在原字符串中,这与子序列有所不同。 A: 可以使用动态规划让时间复杂度降至O(n²) 关于动态规划这篇文章写得很好很强大! 这里使用最原始的办法,时间复杂度O(n³)class Solution {public: /** * @param
2015-06-26 10:45:27 397
原创 Lintcode(3)-字符串查找
Q: 字符串查找(又称查找子字符串),是字符串操作中一个很有用的函数。你的任务是实现这个函数。 对于一个给定的 source 字符串和一个 target 字符串,你应该在 source 字符串中找出 target 字符串出现的第一个位置(从0开始)。 如果不存在,则返回 -1。 如果 source = “source” 和 target = “target”,返回 -1。如果 source
2015-06-17 10:43:13 1740
原创 sizeof空类是多少?
对一个没有成员函数和成员变量的类sizeof是多少? 1. class foo {} // sizeof(foo)=1 理论上来说这个sizeof应该为0,但是如果需要实例化的,那必须要占用内存空间,如果不占用内存空间,那么怎么取地址呢?所以,这个大小由编译器决定,(编译器会向类中增加一个内容).经测试gcc和vs都是为1. 2. class foo { public: foo(
2015-06-15 14:37:38 659
原创 当new失败时候
今天看到同事这样一段代码:MyClass* lpClass = new MyClass;if( !lpClass ) xxxxx;这段代码我们也许习以为常,但是是有问题的。在近代的编译器下,内存分配失败将会抛出异常std::bad_alloc正确的写法1:try{ MyClass* lpClass = new MyClass;}catch( s
2014-12-17 16:49:54 293
原创 linux路径标准化
一般情况下我们在实际使用的都是相对路径比如: ./a/../d所谓标准化:这里是我自己给他命的名,或许叫相对路径绝对化更准确点。其实就是算出路径的最短表示法,就是把 当前目录和上层目录给去掉,得到最短路径。比如 /usr/lib/./../ 得到 /usr方式一:直接使用cd 然后打印当前路径。SHELL如下:
2014-05-14 11:12:15 2686
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人