自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 《代码整洁之道》读书笔记

     因为本人是一个小菜鸟,所以需要在很多地方下功夫,最近突然发现自己的代码规范还是差很多,没有系统的去学习代码规范的相关东西,所以打算补一下这方面的缺陷,毕竟不管是工作多少年的人,在这方面大多人都很难拥有一个良好的编程风格和代码规范。在此记录下读书过程中摘抄的一些笔记,方便以后的查阅。1、勒...

2018-04-19 19:22:39 149 0

原创 四月的哀思

下面这首小诗是我还在上初中的时候写的,真的都快忘记了自己喜欢文学了,今天打开初中的笔记本,偶然看到之前写的这篇小诗,才想起来,原来自己也曾经文艺过。想当初,为了摘抄喜欢的诗歌和文字,浪费了多少时间,笔记本摘抄了好几本,特别喜欢的都会努力背下来,用到自己的文章和作文中去……不知道,当初的自己去了哪里...

2018-08-31 18:28:37 225 4

原创 个人反思

时间如白驹过隙,转眼间毕业已经一年了,很久没有静下心来仔细的反省下自己,现在能坐下来写写东西,不是因为别的,而是因为最近遇到了些许不顺心,感觉有点不安,觉得应该反思下自己。搞不清楚自己,或许大部分人都是这样,在风光无限的时候根本无暇来思考,也不愿意去思考,只有当自己工作、生活等遇到不顺心才会想到去...

2018-08-31 18:05:24 707 2

原创 Xcode打包生成ipa四个选项的具体区别

xcode打包.ipa文件时,会出现如上图所示四个选项,最好是要搞清楚这四个选项的区别,否则会走很多弯路,我最深的体验就是:当我需要测试自己写的demo时,当时没有搞清楚这四个选项,所以当我自己手机安装不了自己打包好的demo时,也不知道是什么原因,刚好同事的iPhone手机可以安...

2018-08-22 16:47:24 662 0

原创 iOS中如何将NSLog日志打印并输出到指定文件中?

iOS中如何将NSLog日志打印并输出到指定文件中? 我们在模拟器运行时,可以直接通过打印到控制台的日志来定位并解决问题,但是对于真机,日志没法保存,不好分析问题。所以有必要将日志保存到应用的Docunment目录下,并设置成共享文件,这样才能取出分析。 直接上代码吧: 代码块 在AppD...

2018-08-22 10:14:03 511 0

原创 经典句子摘抄

经典句子摘抄 1.生而为人,我很抱歉。——寺内寿太郎 2.向来心是看客心,奈何人是剧中人。——张爱玲 3.我年华虚度,空有一身疲倦。——海子 4.我假装无情,其实是痛恨自己的深情。——马良《坦白书》 5.我们卑微脆弱,配不上这天长地久。——《眠空》 6.这是一个流行离开的世界,但是我们...

2018-08-08 10:24:22 5068 0

原创 iOS中引入第三方静态库头文件找不到的问题解决方案

       在前几次项目中,因为要引入一些自己打包好的静态库,也就是第三方静态库,但是出了很多问题,有时会遇到莫名其妙的问题,明明有这个文件,但是就是显示头文件找不到。为了在以后能够快速处理这种问题,所以在这里做一个全面的总结,以备后时只需,有不对的地方欢迎大家指正。   头文件找不到的相关问题...

2018-04-24 14:25:38 8140 0

原创 iOS开发中,如何将第三方或者自己生成的静态库(SDK)引入到自己的项目中?

接上篇博客所讲,我们打包好自己的静态库(SDK)之后,如何将它引入到我们的项目中呢? 1、我们将我们想要引入的静态库直接拖进我们的工程中, 2、在AppDelegate.m文件中引入静态库。比如: 3、上述操作完之后,运行工程,可能会报找不到引入的SDK中头文件的相关错误,这...

2018-01-21 17:45:29 2355 0

原创 iOS学习过程中遇到的各种坑

前段时间因为各种原因需要学习iOS,因此我就开始了iOS学渣之路,因为是零基础,所以我在iOS开发过程中遇到了各种坑,现在将iOS开发过程中遇到的各种问题记录下来,以备后面复习。本来是应该从语言相关开始说起的,但是因为最近要上架APP,所以我打算先说说如何将代码打包成静态库,网上也有很多相关的博客...

2018-01-21 16:47:53 335 0

原创 学无止境!!!

好久都没有写过博客了,最近因为要学习很多新的东西,所以打算重新开始写博客,将自己的学习点滴记录下来,以备后面的复习。 --------------------------------------------------------------------黄金分割线----------------...

2017-06-30 13:58:52 370 2

原创 感恩

今年大四,在秋招时找了将近三个月的工作,拿了四个Offer,其中一个杭州,两个西安,一个北京。其实说起来只有一个Offer是让我最满意的,那就是小米的Offer。其他三个公司都是小企业,根本不值一提,说起小米我感觉面试官真的好好,真的很感谢他让我走进小米,即将去实习了,我一定会好好努力学习,努力工...

2017-02-20 17:32:49 360 2

原创 Effective C++读书笔记

前些天看了《Effective C++》这本书,感受颇深,现将读书过程中记录的相关笔记总结如下,希望会对大家有所帮助。 1、千万不要返回局部对象的引用,也不要返回函数内部用new初始化的指针的引用。     原因:返回一个局部对象的引用他的问题在于,局部对象仅仅是局部的,也就是说局部对象是...

2017-02-10 17:20:03 339 2

原创 TCP为什么是进行三次握手与四次挥手?

TCP是主机对主机层的传输控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接。 (1)位码即tcp标志位:有6种标示:SYN(synchronous建立联机)、 ACK(acknowledgement 确认) 、PSH(push传送、ST(reset重置)、 URG(urgent紧急...

2016-07-27 12:19:48 2552 0

原创 time_wait()是什么状态?

TIME_WAIT在 TCP 的状态流程图中是一个很容易被误解的状态。它是表示socket可以进入和留存相当长一段时间的状态,如果你的系统中有很多 socket 处于TIME_WAIT状态,那么当你需要创建新的 socket 连接的时候可能会受到影响,这也会影响到你的程序的扩展性。 1、TI...

2016-07-27 12:16:54 385 0

原创 微信红包问题求前K个元素(即堆排序的应用)

如我们要在100000个人中找出发红包次数最多的前100个人,那么我们可以用到堆排序的相关知识,下面我们来具体实现一下它,相关代码如下所示: //这是做一个向下调整 void AdjustDown(int * a, int size, int parent) {        ...

2016-07-27 11:20:23 647 0

原创 已知二叉树的前序与中序遍历序列,求重建后的二叉树(即是二叉树的重建)

关于二叉树的概念,想必大家基本上都已经很清楚了,那么在这里我就不再一一赘述了。那么请看下面这道题: 如果已知某二叉树的前序遍历结果为{1,2,4,7,3,5,6,8},中序遍历序列为{4,7,2,1,5,3,8,6},求此重建后的二叉树。 1、实现思路:       我们都知道前序遍历是先访...

2016-07-27 11:13:12 671 0

原创 C++实现二分查找算法

想必二分查找很多人都不陌生,或许说很熟悉,但是在实际生活中又有很多人不能正确的写出它的相应代码,因为二分查找的边界条件等很难控制,下面我们来仔细的分析一下二分查找,这只是个人看法,如有异议,欢迎提出。  1、二分查找可以解决的问题:二分查找可以解决预排序数组的查找问题。只要数组中包含T(即要查找...

2016-07-27 11:08:26 13539 0

原创 死锁产生的必要条件及其处理办法

虽然进程在运行过程中,可能发生死锁,但死锁的发生也必须具备一定的条件,死锁的发生必须具备以下四个必要条件。   1)互斥条件:指进程对所分配到的资源进行排它性使用,即在一段时间内某资源只由一个进程占用。如果此时还有其它进程请求资源,则请求者只能等待,直至占有资源的进程用毕释放。   2)请求和...

2016-07-26 15:50:37 6974 0

原创 可重入函数与线程安全之间的区别与联系

1、什么是线程安全?      一个函数被称为线程安全的(thread-safe),当且仅当被多个并发进程反复调用时,它会一直产生正确的结果。反之,如果一个函数不是线程安全的,我们就说它是线程不安全的(thread-unsafe)。所以,有这么四类函数称为线程不安全的: - 不保护共享变量的函...

2016-07-26 15:17:52 757 0

原创 常用的操作系统的进程调度算法

1、调度算法要达到的目标: (1)公平性考量: 让每个进程尽量平均的占用CPU; (2)效率考量: 尽量增大CPU的吞吐率,让CPU在所有时间基本上处于忙碌状态; (3)响应时间考量: 让交互用户之间的响应时间达到最小; (4)回转(TurnAround): 让批处理用户等待输出的时间尽可...

2016-07-26 14:54:31 937 0

原创 Linux中的task_struct结构体

我们都知道,在广义上,所有的进程信息都被放在一个叫做进程控制块的数据结构中,这个可以理解为进程属性的集合。这里的进程控制块也就是所谓的PCB,他是一个非常大的数据结构,那么它到底有多大呢?如果没什么意外,这个结构体可能是这个宇宙中最大的单个变量了,一个结构体就有好几k那么大,想想他包含了一个进程的...

2016-07-26 14:52:01 2113 0

原创 二叉树常考面试题

树相关的一些概念。树是n(n>=0)个有限个数据的元素集合,形状像一颗倒过来的树。结点:结点包含数据和指向其它结点的指针。结点的度:结点拥有的子节点个数。叶子节点:没有子节点的节点(度为0)。父子节点:一个节点father指向另一个节点child,则child为孩子节点,father为父亲结...

2016-07-26 13:10:41 309 0

原创 用两个栈实现一个队列

用两个栈实现一个队列 1、线性表分为:顺序表和链表。 栈:只允许在尾上(即是栈顶)进行插入与删除。 队列:它是在队尾插入,队头删除。 2、栈选数组(即顺序表)结构时(比选链表结构更好):因为选数组结构可以进行size++与size--,而且效率高。      栈选链表结构: 3、队列选数组结构时:...

2016-07-26 13:10:38 206 0

原创 C++关于模板

假设现在要实现一个比较两个数是否相等的重载函数。1、两个int类型的操作数比较bool IsEqual (int left, int right){     return left == right;}2、两个string类型的操作数比较bool IsEqual (const string&...

2016-07-26 13:10:35 186 0

原创 C++的特性——继承

继承性是面向对象程序设计的最重要的特性,可以这么说,如果没有掌握继承性,就等于没有掌握类和对象的精华,所以很好的掌握继承性是我们学好C++的基础,下面我们对它进行一一介绍。   继承是面向对象复用的重要手段。通过继承定义一个类,它们的类型之间的关系建模,共享公有的东西,实现各自本质不同的东西。  ...

2016-07-26 13:10:32 211 0

原创 单链表常见面试题

一、比较顺序表与链表的优缺点:单链表:它是一种链式存储的线性表,用一组地址任意的存储单元存放线性的的数据元素,称存储单元为一个节点。顺序表:采用顺序存储结构的线性表通常称为顺序表。线性表的顺序存储结构:指用一组地址连续的存储单元依次存储线性表中的各个元素,使得线性表中在逻辑结构上相邻的数据元素存储...

2016-07-26 13:10:29 324 0

原创 动态内存管理

C语言动态内存管理C语言使用malloc/calloc/realloc/free进行动态内存管理。void Test (){     int* p1 = (int*) malloc (sizeof (int)*4);     free(p1 );     // 1.calloc/realloc/m...

2016-07-26 13:10:26 244 0

原创 程序员必备面试题

1、使用main函数的参数,实现一个整数计算器,程序可以接受三个参数,第一个参数“-a”选项执行加法,“-s”选项执行减法,“-m”选项执行乘法,“-d”选项执行除法,后面两个参数为操作数。 例如:输入test.exe -a 1 2 执行1+2输出3#define _CRT_SECURE_NO_W...

2016-07-26 13:10:22 224 0

原创 面试常考题:不调用库函数,怎样实现字符串操作函数?

一:字符串操作函数的功能及应用 1、strcpy()函数       Strcpy(字符数组1,字符数组2)此函数是字符串拷贝函数,它的作用是将字符串2复制到字符数组1中去。 #include #include #include int main() { char str1[30] = { &q...

2016-07-26 13:10:19 928 0

原创 时间复杂度和空间复杂度

1、时间复杂度       所谓时间复杂度实际上就是函数,既是函数计算执行的基本操作次数。ps:这里的函数是指数学里面的函数,而不是C语法里的函数。       如下面这个代码: void Test1 ( int N ) {            for (int i = 0; i ...

2016-07-19 10:49:46 406 0

原创 关于C++中的继承

继承性是面向对象程序设计的最重要的特性,可以这么说,如果没有掌握继承性,就等于没有掌握类和对象的精华,所以很好的掌握继承性是我们学好C++的基础,下面我们对它进行一一介绍。    继承是面向对象复用的重要手段。通过继承定义一个类,它们的类型之间的关系建模,共享公有的东西,实现各自本质不同的东西。...

2016-07-19 10:42:20 292 0

原创 关于指针

不得不说,指针对于学习c/c++的人而言的确是一个头疼但是又特别重要一个问题,在这里,我就将自己的学习经验分享给大家,希望能够帮助更多的人学习。说起指针,或许你还在为到底什么是指针?指针和数组到底是否相等?指针数组是什么?数组指针是什么?函数指针又是什么?函数指针数组,函数指针数组指针它们又是什么...

2016-07-19 10:40:01 247 0

原创 栈和队列

栈的定义--Stack 栈只允许在末端(即是栈顶)进行插入和删除的线性表。栈具有后进先出的特性(LIFO,Last In First Out)。 线性表分为:顺序表和链表。 栈:只允许在尾上(即是栈顶)进行插入与删除。 队列:它是在队尾插入,队头删除。 下图是详细说明: 2、栈选数...

2016-07-19 10:18:42 329 0

原创 C++中传值、传址与传引用的区别

1、参数传递的概念  所谓参数传递就是用函数调用所给出的实参(实际参数)向函数定义所给出的形参(形式参数)设置初始值的过程。 在c++中,调用函数时有三种参数传递方式,分别为: (1)传值调用; (2)传址调用(即是传指针); (3)传引用;     总体上参数传递可以分为两类,由形参...

2016-07-19 10:07:55 4931 0

原创 进程间通信(上)

进程间通信的方式:命名管道和匿名管道、消息队列、信号量、共享内存等这几种方式,下面我们对其进行一一解读。

2016-07-02 10:18:33 397 0

原创 搜索二叉树的增删查改

首先我简单介绍一下搜索二叉树的概念及有关性质,纯属个人观点,如有错误,欢迎不吝赐教。 1、搜索二叉树的概念:根结点的左子树都小于它,它的右子树都大于它,且它的左子树与右子树都是搜素二叉树。 2、二叉搜索树(搜索二叉树 ):搜索二叉树即是排序二叉树,中序遍历它的结果是有序的(升序)。 3、二叉搜索树...

2016-07-01 14:30:59 479 0

原创 单链表的相关面试题

单链表的头插,尾插,删除,查找。约瑟夫环及求环的长度,判断单链表是否相交以及交点,单链表的逆序/正序打印。两个有序单链表的合并。

2016-07-01 10:52:02 304 0

原创 Linux的常用命令

Linux常用指令,Linux基础知识

2016-07-01 10:30:47 1557 0

原创 博客搬家

将博客搬家到CSDN

2016-06-03 11:20:50 237 0

原创 assert与if的区别

assert还是if         在刚开始学习代码的时候,对于程序中检查程序有效性时有时用到assert,有时用if,感到非常困惑。比如,在多数的malloc函数后面对指针进行的操作都是用assert进行检查的,可能会造成一种错觉以为在malloc之后对申请空间的检测是用assert进行的,...

2016-05-28 16:21:16 2141 1

提示
确定要删除当前文章?
取消 删除