![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
随笔
Richard_wx
这个作者很懒,什么都没留下…
展开
-
C语言的基础知识
这篇文章主要讨论C语言细节问题。在找一份工作的时候,语言细节占的比例非常小,之前看某个贴着讨论,估计语言细节在面试中,占了10%的比重都不到,那为什么还要研究C语言的细节呢,我觉得有三个原因促使我总结这篇文章:总会有些面试官喜欢问这样的问题,尤其是偏底层开发的面试官.总有有那么两个2B同学、同事,搞两个很偏的知识点来考你,把你难倒以后,他就乐呵呵的满足了.对C语言有更加巩固的基础,增加信心转载 2014-07-01 22:01:46 · 871 阅读 · 0 评论 -
阿里一道面试题——完全二叉树的最后一颗节点
今天和朋友聊天,说是阿里有道面试题。 已知一颗完全二叉树,有N个节点 求最后一个节点,亦即最后一排最右边的那个节点。 节点数目2^0+……2^(k-1)>=N >= 2^0+2^1+2^2+2^3……2^k 那么树深为k+1,最后个节点在最后层为第(N-2^0+……2^(k-1))个 如果(N-2^0+……2^k-1)>2^k/2,那么在右子树,右子树有N-2^(k-1)个节点,; 如原创 2015-03-24 19:46:13 · 1820 阅读 · 0 评论 -
C++ 4种类型类型转换
C++ 类型转换方式static_cast,const_cast,dynamic_cast,reinterpret_cast原创 2015-04-06 20:24:28 · 487 阅读 · 0 评论 -
大数的中位数问题
其实很多面试都会提到,一堆大数,我要找到其中位数,在O(N)的算法复杂度内。往往这些大数都是不能一次性读到内存中的。腾讯面试题:10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。 题目和基本思路都来源网上,本人加以整理。 题目:在一个文件中有 10G 个整数,乱序排列,要求找出中位数。内存限制为 2G。只写出思路即可(内存限制为 2G的意思就是,可以使用2G的空转载 2015-04-06 21:21:32 · 1967 阅读 · 0 评论 -
洗牌算法 及其证明
今天看到了网易往年的一题面试题,是要写洗牌算法及其证明的。要保证每张牌的概率都是1/N。假设有N张牌。用数组poker[]表示。srand(time(NULL));for(int i = 0; i < N; ++i) { int temp = rand() % (i+1); if(temp != i)//这里有i/(i+1)的概率交换,而每张牌被交换的概率为1/i原创 2015-04-06 20:56:50 · 833 阅读 · 0 评论 -
C++ 智能指针详解
一、简介由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。用智能指针便可以有效缓解这类问题,本文主要讲解参见的智能指针的用法。包括:std::auto_ptr、boost::scoped_ptr、boost::share转载 2015-06-16 13:48:21 · 575 阅读 · 0 评论 -
STL几种常见类型的比较
这里主要是想要比较几种容器的性能,至于他们的接口不在考虑范围Vector相当于一个数组。在内存中分配一块连续的内存空间进行存储。支持不指定vector大小的存储。STL内部实现时,首先分配一个非常大的内存空间预备进行存储,即capacity()函数返回的大小,当超过此分配的空间时再整体重新放分配一块内存存储,这给人以vector可以不指定vector即一个连续内存的大小的感觉。通常此默认的内存分配能原创 2015-05-28 18:26:15 · 2298 阅读 · 0 评论 -
Struct和Class的区别
转载来源:http://blog.sina.com.cn/s/blog_48f587a80100k630.htmlC++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据类型的数据结构了,它已经获取了太多的功能。struct能包含成员函数吗? 能!struct能继承吗? 能!!struct能实现多态吗? 能!!! 既然这些它都能实现,那它和c转载 2015-05-19 19:47:51 · 352 阅读 · 0 评论 -
C++中static 关键字
C++包含了C的特性和C++的特性,static 自然也具备了这两者的特性C特性静态全局变量• 该变量在全局数据区分配内存; • 未经初始化的静态全局变量会被程序自动初始化为0(自动变量的值是随机的,除非它被显式初始化); • 静态全局变量在声明它的整个文件都是可见的,而在文件之外是不可见的; 静态局部变量在局部变量前,加上关键字static,该变量就被定义转载 2015-05-13 18:12:44 · 330 阅读 · 0 评论 -
permutation 问题小结——康托展开
昨天做百度的校招笔试题,又碰到了类似于permutation的题目,求其在其序列中是第几小的,这类题目和leetcode上的题目类似Permutations:输出所有的序列组合,这里其实可以用库函数中的next_permutation()PermutationsII:同上,只是序列中有重复的数字,注意标记即可Permutation Sequence:根据k,输出当前序列的第k大的数原创 2015-09-29 14:23:15 · 616 阅读 · 0 评论 -
组合概率
输入:从[a,b]中取出n个整数,求n个整数和为x的概率是多少。可以重复取出。利用动态规划+枚举#includeusing namespace std;double dp[110][11000];int main(){ if(freopen("/Users/richard/ClionProjects/Didi/in","r",stdin) == NULL) {原创 2015-09-29 14:31:06 · 588 阅读 · 0 评论 -
SecureCRT 绝佳配色方案, 保护你的眼睛
转载的secureCRT的配置,设置完后确实很舒服。码农也要对自己好一点SecureCRT 绝佳配色方案, 保护你的眼睛关键词:SecureCRT配色, SecureCRT设置颜色, Linux终端配色,Linux终端颜色设置.来源:我的有道笔记 SecureCRT 绝佳配色方案, 保护你的眼睛终端有一个好的配转载 2015-03-09 17:11:26 · 784 阅读 · 0 评论 -
Protocol Buffer技术详解
最近开始了自己研二下学期在京东的实习。实习工作、论文的压力、以及继续找暑期的实习,压得自己有些喘不过气,不过还是继续努力吧!京东的实习节奏有些快,下礼拜要在原有的功能上新添些新的功能,虽然不是很难,但是有自己尚未接触过的protobuffer,所以趁着周末,稍微学习学习。以下是我看到的讲的比较好的文章,所以就转载过来了PB技术详解语言规范 该系列Blog的内容主转载 2015-03-08 10:18:31 · 1022 阅读 · 0 评论 -
C++ istream_iterator以及cin输入的一些问题
#include #include #include #include #include #include using namespace std;int main(){istream_iterator is(cin);istream_iterator eof;vector text;copy(is, eof, b原创 2014-07-02 11:35:26 · 1280 阅读 · 0 评论 -
搜狐一题面试题 链表的排序
今天一同学去参加搜狐的笔试,原创 2014-05-30 19:45:26 · 648 阅读 · 0 评论 -
python中怎么import自己写的模块
最近在接触学习ML的一些东西,看了Androw 的视频和deep learning的东西,原创 2014-08-16 14:11:04 · 25814 阅读 · 1 评论 -
python 中的split()和strip()
这两个函数在读入文本信息,处理字符串时常常用到,具体原创 2014-09-27 15:09:49 · 16041 阅读 · 2 评论 -
python yield的用法
今天在看转载 2014-10-05 20:54:20 · 531 阅读 · 0 评论 -
动态规划和递归
递归算法就是通过解决同一问题的一个或多个更小的实例来最终解决一个大问题的算法。为了在C语言中实现递归算法,常常使用递归函数,也就是说能调用自身的函数。递归程序的基本特征:它调用自身(参数的值更小),具有终止条件,可以直接计算其结果。 在使用递归程序时,我们需要考虑编程环境必须能够保持一个其大小与递归深度成正比例的下推栈。对于大型问题,这个栈需要的空间可能妨碍我们使用递归的方法。转载 2014-11-20 20:54:25 · 1211 阅读 · 0 评论 -
卡特兰数
给定1,2,3,4,5五个数和一个栈,问一共有多少种出栈序列。。。举例:两个数的话有:a、1进栈,2进栈,2出栈,1出栈,序列为21b、1进栈,1出栈,2进栈,2出栈,序列为12所以两个数的话是2种举例212个高矮不同的人,排成两排,每排必须是从矮到高排列,而且第二排比对应的第一排的人高,问排列方式有多少种?其实这就是卡特兰数卡特兰数又称卡塔兰数,英文名Catala原创 2015-01-08 14:05:20 · 423 阅读 · 0 评论 -
2014-5-19 string类型的下标(随笔)
记一记 今天遇到的小问题。原创 2014-05-19 16:09:29 · 1513 阅读 · 0 评论 -
计数排序、桶排序和基数排序
计数排序当输入的元素是 n 个 0 到 k 之间的整数时,它的运行时间是 Θ(n + k)。计数排序不是比较排序,排序的速度快于任何比较排序算法。由于用来计数的数组C的长度取决于待排序数组中数据的范围(等于待排序数组的最大值与最小值的差加上1),这使得计数排序对于数据范围很大的数组,需要大量时间和内存。例如:计数排序是用来排序0到100之间的数字的最好的算法,但是它不适合按字母顺序转载 2015-01-14 15:12:36 · 395 阅读 · 0 评论 -
python generator 的惰性计算
今天和朋友看到这么一段代码data = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5, 8, 9, 7, 9, 3, 2, 3, 8, 4] group_sz = 5 cur_list = []groups = [] for d in data: cur_list.append(d) if len原创 2015-08-26 17:19:19 · 1640 阅读 · 0 评论