Fork me on GitHub

03 2016 档案

摘要:SQLite 简介 SQLite,是一款轻型的数据库,是遵守ACID的关联式数据库管理系统,它的设计目标是嵌入式的,而且目前已经在很多嵌入式产品中使用了它,它占用资源非常的低,在嵌入式设备中,可能只需要几百K的内存就够了。它能够支持Windows/Linux/Unix等等主流的操作系统,同时能够跟很 阅读全文
posted @ 2016-03-31 20:37 ranjiewen 阅读(8319) 评论(0) 推荐(0)
摘要:2016.3月的网易实习生机试题,考察了的对二叉树的灵活应用,理解中序遍历的用处!可能还有优化的解,大家自由发挥! 阅读全文
posted @ 2016-03-31 15:12 ranjiewen 阅读(1331) 评论(0) 推荐(0)
摘要:静态查找结构主要有两种:顺序查找、折半查找 一、顺序查找:这个就不用说了,一个一个的差吧,很差劲的算法了,时间复杂度是O(n) public int shunXuSearch( int[] b, int c) { for ( int i = 0; i < b. length; i++) { if ( 阅读全文
posted @ 2016-03-30 23:57 ranjiewen 阅读(668) 评论(0) 推荐(0)
摘要:关于XML及其使用场景不在此多做介绍,今天主要介绍Qt中对于XML的解析。QtXml模块提供了一个读写XML文件的流,解析方法包含DOM和SAX,两者的区别是什么呢? DOM(Document Object Model):将XML文件保存为树的形式,操作简单,便于访问。SAX(Simple API 阅读全文
posted @ 2016-03-30 16:24 ranjiewen 阅读(10461) 评论(0) 推荐(1)
摘要:C语言标准库函数strcpy,把从src地址开始且含有NULL结束符的字符串复制到以dest开始的地址空间。 C语言函数 原型声明:extern char *strcpy(char* dest, const char *src); 头文件:#include <string.h> 和 #include 阅读全文
posted @ 2016-03-30 00:07 ranjiewen 阅读(5709) 评论(0) 推荐(0)
摘要:atoi()函数的功能:将字符串转换成整型数;atoi()会扫描参数nptr字符串,跳过前面的空格字符,直到遇上数字或正负号才开始做转换,而再遇到非数字或字符串时('\0')才结束转化,并将结果返回(返回转换后的整型数)。 atoi()函数实现的代码: /* * name:xif * coder:x 阅读全文
posted @ 2016-03-29 23:59 ranjiewen 阅读(1551) 评论(0) 推荐(0)
摘要:01背包问题具体例子:假设现有容量10kg的背包,另外有3个物品,分别为a1,a2,a3。物品a1重量为3kg,价值为4;物品a2重量为4kg,价值为5;物品a3重量为5kg,价值为6。将哪些物品放入背包可使得背包中的总价值最大? 这个问题有两种解法,动态规划和贪婪算法。本文仅涉及动态规划。 先不套 阅读全文
posted @ 2016-03-29 22:50 ranjiewen 阅读(1346) 评论(0) 推荐(0)
摘要:具体归纳如下: reinterpret_cast 函数将一个类型的指针转换为另一个类型的指针. 这种转换不用修改指针变量值存放格式(不改变指针变量值),只需在编译时重新解释指针的类型就可做到.reinterpret_cast 可以将指针值转换为一个整型数,但不能用于非指针类型的转换. 例: cons 阅读全文
posted @ 2016-03-29 17:11 ranjiewen 阅读(664) 评论(0) 推荐(0)
摘要:一、简介 由于 C++ 语言没有自动内存回收机制,程序员每次 new 出来的内存都要手动 delete。程序员忘记 delete,流程太复杂,最终导致没有 delete,异常导致程序过早退出,没有执行 delete 的情况并不罕见。 用智能指针便可以有效缓解这类问题,本文主要讲解参见的智能指针的用法 阅读全文
posted @ 2016-03-29 15:37 ranjiewen 阅读(229) 评论(0) 推荐(0)
摘要:刚做的时候根本就没有想到解题思路,刚好看到了别人的思路,自己写了一下。里面对unordered_map及vector二维数组的建立很灵活,另外区别了一下map,unordered_map,hash_map;但是没有弄清楚unordered_map,hash_map的区别。以后遇到了在细细研究。 另一 阅读全文
posted @ 2016-03-28 13:05 ranjiewen 阅读(1678) 评论(0) 推荐(0)
摘要:map介绍 Map是STL[1]的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数据的时候,在编程上提供快速通道。这里说下map内部数据的组织,map内部自建一颗红黑树(一 阅读全文
posted @ 2016-03-28 10:42 ranjiewen 阅读(11899) 评论(0) 推荐(0)
摘要:这个图像的旋转,即矩阵的操作,和左神讲的旋转打印矩阵及其改编题型很相似,异曲同工! 阅读全文
posted @ 2016-03-27 00:12 ranjiewen 阅读(511) 评论(0) 推荐(0)
摘要:简述 经常有人问我编写Qt程序时使用什么IDE,其实这个真的很难回答(各有所长),只能说看个人爱好了,因为我两个都用,而且两个都很喜欢(比较多情吧O(∩_∩)O~)! 下面将进行Qt Creator与Visual Studio比较,大家可以参考一下! Visual Studio+Qt:以下均以此代表 阅读全文
posted @ 2016-03-25 11:27 ranjiewen 阅读(11359) 评论(0) 推荐(1)
摘要://利用字符重复出现的次数,编写一个方法,实现基本的字符串压缩功能。比如,字符串“aabcccccaaa”经压缩会变成“a2b1c5a3”。 //若压缩后的字符串没有变短,则返回原先的字符串。 //给定一个string iniString为待压缩的串(长度小于等于3000),保证串内字符均由大小写英文字母组成,返回一个string, //为所求的压缩后或未变化的串。 #include using... 阅读全文
posted @ 2016-03-24 22:25 ranjiewen 阅读(510) 评论(0) 推荐(0)
摘要:在C++中则把字符串封装成了一种数据类型string,可以直接声明变量并进行赋值等字符串操作。以下是C字符串和C++中string的区别: C字符串 string对象(C++) 所需的头文件名称 <string>或<string.h> <string>或<string.h> 需要头文件 原因 为了使 阅读全文
posted @ 2016-03-24 20:36 ranjiewen 阅读(666) 评论(0) 推荐(0)
摘要:MFC和QT是C++中常见的GUI框架,而WinForm和WPF是C#中常用的框架,不过我们一般很少叫WinForm框架,可能直接叫图形控件类库更多点.反正只是个称呼罢了,爱咋叫就咋叫.另外WinForm与WPF(即Windows Form与Windows Presentation Foundati 阅读全文
posted @ 2016-03-24 19:49 ranjiewen 阅读(1638) 评论(0) 推荐(1)
摘要:string类的构造函数:string(const char *s); //用c字符串s初始化string(int n,char c); //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string s2="hello";都是正确的写法。当构造的st 阅读全文
posted @ 2016-03-23 21:11 ranjiewen 阅读(347) 评论(0) 推荐(0)
摘要:今天编程练习时遇到了istringstream的用法,感觉很实用。后面附题目! C++的输入输出分为三种: (1)基于控制台的I/O (2)基于文件的I/O (3)基于字符串的I/O 1、头文件 #include <sstream> 2、作用 istringstream类用于执行C++风格的字符串流 阅读全文
posted @ 2016-03-23 20:24 ranjiewen 阅读(1871) 评论(0) 推荐(1)
摘要:奉献两个小题,练习继续: 阅读全文
posted @ 2016-03-22 13:38 ranjiewen 阅读(644) 评论(0) 推荐(0)
摘要:网上存在三种方法: 1) 算术运算 简单来说,就是通过+和-运算来实现。代码如下: int a,b; a=10;b=12; a=b-a; //a=2;b=12 b=b-a; //a=2;b=10 a=b+a; //a=12;b=10 通过以上运算,a和b中的值就进行了交换。表面上看起来很简单,但是不 阅读全文
posted @ 2016-03-22 10:23 ranjiewen 阅读(557) 评论(0) 推荐(0)
摘要:刚刚练习华为机试上的题目遇到了这个问题,奉上两个小题: 阅读全文
posted @ 2016-03-21 21:27 ranjiewen 阅读(2257) 评论(0) 推荐(0)
摘要:二维vectorvector<vector <int> > ivec(m ,vector<int>(n)); //m*n的二维vector动态创建m*n的二维vector方法一:vector<vector <int> > ivec;ivec.resize(m);for(int i=0;i<m;i++ 阅读全文
posted @ 2016-03-19 01:17 ranjiewen 阅读(12868) 评论(0) 推荐(0)
摘要:从头到尾彻底理解KMP(2014年8月22日版) 从头到尾彻底理解KMP(2014年8月22日版) KMP字符串模式匹配通俗点说就是一种在一个字符串中定位另一个串的高效算法。简单匹配算法的时间复杂度为O(m*n),KMP匹配算法,可以证明它的时间复杂度为O(m+n).。 一.简单匹配算法 先来看一个 阅读全文
posted @ 2016-03-19 01:14 ranjiewen 阅读(754) 评论(0) 推荐(0)
摘要:C++中cin、cin.get()、cin.getline()、getline()、gets()等函数的用法 学C++的时候,这几个输入函数弄的有点迷糊;这里做个小结,为了自己复习,也希望对后来者能有所帮助,如果有差错的地方还请各位多多指教 1、cin 2、cin.get() 3、cin.getli 阅读全文
posted @ 2016-03-17 21:31 ranjiewen 阅读(603) 评论(0) 推荐(0)
摘要:强烈建议参阅链接:http://www.linezing.com/blog/?p=798#nav-1 说白了,索引问题就是一个查找问题。。。 数据库索引,是数据库管理系统中一个排序的数据结构,以协助快速查询、更新数据库表中数据。索引的实现通常使用B树及其变种B+树。 在数据之外,数据库系统还维护着满 阅读全文
posted @ 2016-03-17 10:35 ranjiewen 阅读(249) 评论(0) 推荐(0)
摘要:linux中fork()函数详解(原创!!实例讲解) (转载) 一、fork入门知识 一个进程,包括代码、数据和分配给进程的资源。fork()函数通过系统调用创建一个与原来进程几乎完全相同的进程, 也就是两个进程可以做完全相同的事,但如果初始参数或者传入的变量不同,两个进程也可以做不同的事。 一个进 阅读全文
posted @ 2016-03-17 00:22 ranjiewen 阅读(416) 评论(0) 推荐(0)
摘要:UML的类图关系分为: 关联、聚合/组合、依赖、泛化(继承)。而其中关联又分为双向关联、单向关联、自身关联;下面就让我们一起来看看这些关系究竟是什么,以及它们的区别在哪里。1、关联双向关联:C1-C2:指双方都知道对方的存在,都可以调用对方的公共属性和方法。在GOF的设计模式书上是这样描述的:虽然在 阅读全文
posted @ 2016-03-16 21:16 ranjiewen 阅读(1196) 评论(0) 推荐(0)
摘要:  阅读全文
posted @ 2016-03-15 13:53 ranjiewen 阅读(7547) 评论(0) 推荐(1)
摘要:1.本文编写目的    本文是为了帮助一些人弄清一些关于Windows API, C运行时程序库(CRT), 和标准C++库(STL)的基本概念。有很多人甚至是有经验的程序员在这些概念上是含糊不清的甚至是有错误观点。如果你想知道他们是在什么基础上实现的并且一直没时间弄清楚这些概念,请花费点时间阅读下 阅读全文
posted @ 2016-03-14 21:12 ranjiewen 阅读(635) 评论(0) 推荐(0)
摘要:C++11标准推出了很多有用的新特性,本文特别关注那些相比C++98更像是一门新语言的特性,理由是: 提示: 译注: 1. Programming idiom:编程习语,在一种或多种编程语言中重复出现的表达形式,用来表示没有在编程语言中内置的简单的任务或者算法,也可以用来表示在编程语言中内置的不常用 阅读全文
posted @ 2016-03-14 20:52 ranjiewen 阅读(468) 评论(1) 推荐(1)
摘要:排序方法 平均情况 最好情况 最坏情况 辅助空间 稳定性 冒泡排序 O(n^2) O(n) O(n^2) O(1) 稳定 选择排序 O(n^2) O(n^2) O(n^2) O(1) 不稳定 插入排序 O(n^2) O(n) O(n^2) O(1) 稳定 希尔排序O(n*log(n))~O(n^2) 阅读全文
posted @ 2016-03-14 14:41 ranjiewen 阅读(4407) 评论(0) 推荐(0)
摘要:数组指针和指针数组的区别 数组指针和指针数组的区别 指针数组:array of pointers,即用于存储指针的数组,也就是数组元素都是指针 数组指针:a pointer to an array,即指向数组的指针 测试: 指针函数是指带指针的函数,即本质是一个函数。函数返回类型是某一类型的指针 函 阅读全文
posted @ 2016-03-14 14:37 ranjiewen 阅读(1248) 评论(0) 推荐(0)
摘要:今天学习是看到了讲解C++容器的一些细节用法,故记之!参考:http://www.cnblogs.com/answeryi/archive/2011/12/16/2289811.html; 阅读全文
posted @ 2016-03-13 18:25 ranjiewen 阅读(787) 评论(0) 推荐(0)
摘要:首先make_pair Pairs C++标准程序库中凡是“必须返回两个值”的函数, 也都会利用pair对象 class pair可以将两个值视为一个单元。容器类别map和multimap就是使用pairs来管理其健值/实值(key/va lue)的成对元素。 pa... 阅读全文
posted @ 2016-03-13 17:04 ranjiewen 阅读(265) 评论(0) 推荐(0)
摘要:  今天练习华为上机测试题,遇到了map的用法,看来博客http://blog.csdn.net/sprintfwater/article/details/8765034;感觉很详细,博主的其他内容也值得学习;后面附上今天的练习题目。       阅读全文
posted @ 2016-03-13 17:02 ranjiewen 阅读(1127) 评论(0) 推荐(0)
摘要:strcpy函数的实现 已知strcpy函数的原型是: char *strcpy(char *dst, const char *src); 实现strcpy函数 解释为什么要返回char * 假如考虑dst和src内存重叠的情况,strcpy该怎么实现 1.strcpy的实现代码(360百科:htt 阅读全文
posted @ 2016-03-12 15:57 ranjiewen 阅读(358) 评论(0) 推荐(0)
摘要:http连接分为:建立连接,即tcp三次握手 发送请求信息 发送响应信息 关闭连接(tcp四次握手);下面讲此过程: 在TCP断开的过程中会有四个状态变化过程,如下图所示: 在连接撤销过程中,有如下过程: 1.HOST1上的应用程序关闭己方的连接导致TCP发送一个FIN消息给HOST2。 2.HOS 阅读全文
posted @ 2016-03-11 16:28 ranjiewen 阅读(649) 评论(0) 推荐(0)
摘要:今天晚上解决了之前在跟着 Linux学习之CentOS(六)--CentOS下VMware-Tools安装 解压部分,cp 压缩文件时,没有通过命令,直接鼠标操作复制到/home/ranjiewen下,然后tar 貌似从/home/ranjiewen/VM...根目录下解压才成功的。@修改2016- 阅读全文
posted @ 2016-03-10 20:55 ranjiewen 阅读(1441) 评论(0) 推荐(0)
摘要:今天在练习的时候突然发现了这个问题,百度之感觉还挺常见的,故记之! 解释有: 在 C++Primer 中,作者经常使用 while(cin>>word) 类似的语法,但是如何结束,可能会出现疑惑。有的时候需要两次快捷键才能结束循环,有的时候却只需要一次循环。 在 Unix 系统中的实际的现象为: * 阅读全文
posted @ 2016-03-10 18:15 ranjiewen 阅读(4421) 评论(0) 推荐(0)
摘要:今天又遇到了上次出现的bug,然后百度了一下,想起来这是内存溢出的毛病,故记录下来! 出现的问题就是这样: heap corruption detected: after normal block(#xxx) at 0x xxxxxxxx crt detected that the applicat 阅读全文
posted @ 2016-03-09 18:41 ranjiewen 阅读(2937) 评论(0) 推荐(0)
摘要:二叉树的非递归遍历 二叉树是一种非常重要的数据结构,很多其它数据结构都是基于二叉树的基础演变而来的。对于二叉树,有前序、中序以及后序三种遍历方法。因为树的定义本身就是递归定义,因此采用递归的方法去实现树的三种遍历不仅容易理解而且代码很简洁。而对于树的遍历若采用非递归的方法,就要采用栈去模拟实现。在三 阅读全文
posted @ 2016-03-04 17:16 ranjiewen 阅读(1410) 评论(0) 推荐(0)
摘要:今天完成了剑指offer上的66道编程题,感觉自己还是很多代码实现能力和算法积累都还不够!还需要继续联系,坚持自己独立写代码实现。 最后将今天的两道题目奉上,都有异曲同工之妙: 矩阵中的路径: #include<memory.h> //题目描述 // //请设计一个函数,用来判断在一个矩阵中是否存在 阅读全文
posted @ 2016-03-04 16:57 ranjiewen 阅读(393) 评论(0) 推荐(0)
摘要:引用是除指针外另一个可以产生多态效果的手段。 1 //引用是除指针外另一个可以产生多态效果的手段。 2 #include<iostream> 3 using namespace std; 4 class A 5 { 6 public: 7 virtual void print() 8 { 9 cou 阅读全文
posted @ 2016-03-04 10:38 ranjiewen 阅读(355) 评论(0) 推荐(0)
摘要:虽然安装的centos感觉不能上网,权限也不知道怎么设置。 偶然的机会发现了一个好东西,博客:http://www.cnblogs.com/xiaoluo501395377/tag/CentOS/。有个分类专门讲centos学习的过程,今天跟着学习两三节,感觉写的很不错,很多细节很到位,打算收藏好好 阅读全文
posted @ 2016-03-03 19:06 ranjiewen 阅读(223) 评论(0) 推荐(0)
摘要:刚刚看的博文:http://blog.csdn.net/ns_code/article/details/40408397 里面有些资料值得学习! 写在前面 结束了在百度的实习,是时候写下校招的总结了,再不写估计很多东西都忘了。在开源社区混迹久了,从别人的学习、求职、工作经历中越发感受到很多的正能量, 阅读全文
posted @ 2016-03-03 16:08 ranjiewen 阅读(854) 评论(2) 推荐(0)
摘要:前几天安装好了Linux的基本环境,安装过也查了一些资料。 环境:VMware workstation 10;CentOS 7.0。体验了一下虚拟机和安装系统,感觉好实际安装win10差不多,用户体验比较好。 今天初次接触了一些命令,还有很多多不知道,希望自己坚持学习! 这是招聘C++开发的要求: 阅读全文
posted @ 2016-03-02 20:12 ranjiewen 阅读(242) 评论(0) 推荐(0)
摘要:在学习算法的过程中,我们除了要了解某个算法的基本原理、实现方式,更重要的一个环节是利用big-O理论来分析算法的复杂度。在时间复杂度和空间复杂度之间,我们又会更注重时间复杂度。 时间复杂度按优劣排差不多集中在: O(1), O(log n), O(n), O(n log n), O(n2), O(n 阅读全文
posted @ 2016-03-02 14:58 ranjiewen 阅读(514) 评论(0) 推荐(0)