随笔分类 -  C/CPP学习

上一页 1 2 3 4 5 6 7 ··· 10 下一页
摘要:templateclass ThreadsafeList{ struct Node { std::mutex m; std::shared_ptr data; std::unique_ptr next; Node(): ... 阅读全文
posted @ 2015-09-29 09:33 wu_overflow 阅读(1153) 评论(0) 推荐(0)
摘要:template>class ThreadsafeLookupTable{private: class BucketType { private: typedef std::pair bucketValue; typedef std::list buck... 阅读全文
posted @ 2015-09-27 10:06 wu_overflow 阅读(160) 评论(0) 推荐(0)
摘要:倒是很简单啊,我是先用 brew istall 安装的 boost,Qt creator 的版本是 3.4.2然后右键项目,选择添加库,接着在相应的文件夹里选择相应的后缀为 .a 的库文件,.pro 中就会自动配置。所以这就完了吗?当然不,我这里报错:can't map file crrno=22 ... 阅读全文
posted @ 2015-09-26 17:57 wu_overflow 阅读(376) 评论(0) 推荐(0)
摘要:templateclass ThreadsafeQueue{private: struct Node { std::shared_ptr data; std::unique_ptr next; }; std::unique_... 阅读全文
posted @ 2015-09-26 09:18 wu_overflow 阅读(655) 评论(0) 推荐(0)
摘要:上一篇文章里说到了一个极简易队列的实现,然而它对于并发存在一个问题,就是当多个或者说就是两个线程并发地访问队列,分别调用 push() 与 tryPop() 时,可能就会导致数据争用或者死锁。以下是一种思路,通过分离数据允许并发。其大致思路是预先分配一个不储存任何数据的结点占位,当 push() 进... 阅读全文
posted @ 2015-09-24 18:48 wu_overflow 阅读(306) 评论(0) 推荐(0)
摘要:templateclass Queue{private: struct Node { T data; std::unique_ptr next = nullptr; Node(T _data): ... 阅读全文
posted @ 2015-09-23 14:48 wu_overflow 阅读(347) 评论(0) 推荐(0)
摘要:学的还是不满意,对于智能指针还是有几个误区:1. 对于 unique_ptr sp1,觉得在 auto sp2 = std::move(sp1) 之后,其所管理的指针的资源会因为 sp1 的析构而导致其释放,后来发现并不是,move 操作只是管理权的移交,所以其存储的裸指针所分配的资源并不会被释放。... 阅读全文
posted @ 2015-09-23 11:45 wu_overflow 阅读(165) 评论(0) 推荐(0)
摘要:templateclass ThreadsafeQueue{private: mutable std::mutex _mut; std::queue> _dataQueue; std::condition_variable _dataCo... 阅读全文
posted @ 2015-09-23 01:21 wu_overflow 阅读(275) 评论(0) 推荐(0)
摘要:memory_order_release 意为只有前面的语句都执行完后,这条语句才会执行。memory_order_acquire 意为只有这条语句执行完之后,后面的语句才会执行。memory_order_consume 和 memory_order_acquire 差不多,只是memory_ord... 阅读全文
posted @ 2015-09-19 14:27 wu_overflow 阅读(162) 评论(0) 推荐(0)
摘要:void printTriangle(int32_t layerNum){ if (layerNum < 1){ return; } for (int32_t currentNum = 1, spaceWide = layerNum - 1; ... 阅读全文
posted @ 2015-09-16 17:51 wu_overflow 阅读(355) 评论(0) 推荐(0)
摘要:想了很久啊,看了标签是 DP,所以考虑之后自己琢磨出了个策略,结果还是不对啊,各种 test case 过不去。后来才发现这其实还可以用更为简单的方法——数学定理对没错,所以说世界上只有两种程序员:懂数学的和不懂数学的。// 四平方定理,又称 Lagrange's four-square theor... 阅读全文
posted @ 2015-09-15 20:21 wu_overflow 阅读(295) 评论(0) 推荐(0)
摘要:原问题是,生产线中出现了一个残次品,导致在那之后的产品都是残次品,要求找出第一个残次品。问题中还给出了用于判断的 API isBadVersion(version) 我把问题简化了,理解为在一个数组中,前一段是正数,后一段是负数,求第一个负数的位置。奇怪的是我在 Xcode 上运行好几种情况都是成功... 阅读全文
posted @ 2015-09-10 13:26 wu_overflow 阅读(196) 评论(0) 推荐(0)
摘要:比如一个 [3, 1, 5, 10] 的树,设其根结点为 root, 那么对于函数hasPathSum(root, 18) 的返回值就是 true。题目列出的知识点是深度优先搜索,可是我刚明白一点动态规划,所以我考虑的是,符合条件的树枝去掉叶子,剩下节点的和必然等于给定值减去叶子节点。bool ha... 阅读全文
posted @ 2015-09-05 22:51 wu_overflow 阅读(171) 评论(0) 推荐(0)
摘要:本来是打算直接用 bitset 解决问题的,转成二进制再转成十进制,相加后再通过逆运算求得最终的字符串。然而却存在一个问题,就是溢出,当给出的二进制过于大的时候,相加就解决不了了,因此就要按照字符串来处理。以下是我的解决方案,虽说很丑,然而速度还行吧:string addBinary(string ... 阅读全文
posted @ 2015-09-05 15:41 wu_overflow 阅读(626) 评论(0) 推荐(0)
摘要:因为每一行都是根据其上一行推出来的,所以说我只需要上一行的信息。vector getRow(int rowIndex) { if (rowIndex (); } vector result(rowIndex + 1); result[0] = 1; result[row... 阅读全文
posted @ 2015-09-04 01:14 wu_overflow 阅读(290) 评论(0) 推荐(0)
摘要:我一只觉得是不是一个深度优先搜索啥的;然后一看是二叉树,立刻脑子就往递归去了,回溯?让叶子往根回溯?通过推迟求值来得到叶子再回溯,这就是我一开始的想法。然而却毫无进展,唉,于是我就用了一个很笨的方法,就是每遇到一个右孩子,就复制分叉前的树枝存入容器里,存入的位置由 index 作为其 id为了不会存... 阅读全文
posted @ 2015-09-01 17:02 wu_overflow 阅读(523) 评论(0) 推荐(0)
摘要:自己想了两天都没思路啊啊啊啊啊我真是太笨了。看了他的 tag,说是用到了动态规划,于是特意看了算法导论里动态规划的部分。然而只是说了其思想,第一步构建合理的数据结构,第二部以递归的形式求解。可见水无常形,动态规划并不是单纯的公式就可以解决的。那么具体如何处理呢?第一是,什么时候会用到动态规划,就是这... 阅读全文
posted @ 2015-08-28 23:40 wu_overflow 阅读(1256) 评论(0) 推荐(0)
摘要:我已开始的策略其实是直接转字符串操作一下完了:int reverse(int x) { if (x == 0){ return 0; } while (x % 10 == 0){ x /= 10; } auto&& s = to_string... 阅读全文
posted @ 2015-08-26 11:42 wu_overflow 阅读(261) 评论(0) 推荐(0)
摘要:就是字面意思,负数不算回文数。但可能是我的英语太差,所以看到 "Do this without extra space." 的时候,觉得是不能用其他的变量,因为要往栈上分配空间。所以觉得好难,以为要从回文数的数学性质入手,因此看了一些资料仍觉无从下手。直到看到了一些 Accepted 的解决方案……... 阅读全文
posted @ 2015-08-26 08:30 wu_overflow 阅读(174) 评论(0) 推荐(0)
摘要:我用的方法是,同时保存每个 string 的begin 迭代器,让他们一起移动,然后统一比较,若是不同,或其中有的已经到了 end() ,那么就返回。否则所有的迭代器共同前进一步。string longestCommonPrefix(vector& strs) { if (strs.empty... 阅读全文
posted @ 2015-08-25 18:16 wu_overflow 阅读(229) 评论(0) 推荐(0)

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