1. 数据结构——优先队列(C++和Java实现)

    十几天没有更新自己的博客了,因为目前在算法和数据结构的学习中,碰到了一些问题,例如之前就在优先队列,堆这个数据结构面前,感觉到有点吃不透概念,而使用的那本书上写的实在太抽象了,所以又查找了很多资料,最终对优先队列这个数据结构有了一定的了解。花了点时间才啃下来的知识,当然要把它记录下来了,所以今天就来回顾一下优先队列。

    2017/08/19 算法与数据结构

  2. 数据结构——AVL树(C语言)

    AVL(Adelson-Velskii 和 Landis)树是带有平衡条件的二叉查找树。在计算机科学中,AVL树是最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为1,所以它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是O(lngn)。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。

    2017/08/06 算法与数据结构

  3. 数据结构——二叉查找树(C语言)

    二叉查找树,也称作二叉搜索树,有序二叉树,排序二叉树,而当一棵空树或者具有下列性质的二叉树,就可以被定义为二叉查找树:

    2017/07/30 算法与数据结构

  4. 数据结构——链表的游标实现(C语言)

    上一篇博文我们用指针实现了链表,但是诸如BASIC和FORTRAN等许多语言都不支持指针。如果需要链表而又不能使用指针,这时我们可以使用游标(cursor)实现法来实现链表。

    2017/07/20 算法与数据结构

  5. 数据结构——链表(C语言实现)

    提起链表,我们每个人都不会陌生,不管对数据结构的掌握如何,都或多或少的听过与用过链表这样的常见的数据结构。链表是线性表的一种,最基础的线性表,在插入与删除数据时,我们需要对表的整体或部分做移动,为了允许表可以不按照线性的顺序存储数据结构,于是链表就应运而生。链表最大的特点就是在每个节点里存储了到下一个节点的指针。由于不必按照顺序存储,链表在插入的时候可以达到O(1)的复杂度,比我们学习的最基本的线性表要快得多。但是在查找一个节点,或者访问特定编号的结点则需要O(N)的时间。

    2017/07/17 算法与数据结构

  6. iOS开发——十六进制字符串与NSData的转化

    最近在完成一个需求时,遇到了NSData类型转换为十六进制的字符串这个需求的函数,在stackoverflow中翻找的时候,给出的答案基本上是如下的:

    2017/07/07 iOS开发

  7. iOS开发——自主设计日志系统

    好像很久没有写有关iOS的文章了,其实iOS的开发一直都是在进行的,但是最近有需求拓宽知识的宽度,所以一直在接触别的知识,当然啦,移动端开发并不能丢下。

    2017/06/29 iOS开发

  8. Linux的用户管理(二)

    上次的博客我们讲了关于Linux的用户管理的内容,现在我们来讲第二部分——系统用户组的管理。

    2017/06/22 技术笔记

  9. Linux的用户管理(一)

    在看《鸟哥的Linux私房菜》的第四章之前,我操作Linux系统时,习惯性的使用root账号,为什么呢?无非图一个方便,没有那么多权限设置,对当时我这个Linux小白来说,再好不过了。但是看完了鸟哥的书,我才意识到当时的操作是有多大的问题,所以在此书写一下以便日后回顾。

    2017/06/13 技术笔记

  10. Liunx的文件权限

    之前讲过为了统一开发环境生产环境以及更换开发机器的情况,我把环境统一由Vagrant部署在Linux的虚拟机中,但是由于我对Linux系统没有系统的学习过,对于环境的部署也仅仅通过谷歌等刚刚入门,所以在具体的开发中我还是经常在Linux中遇到问题,经常求教老大。看着老大熟练的把玩Linux,我也下定决心要把Linux掌握好。

    2017/06/02 技术笔记