自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

转载 tmux

转载于:https://www.cnblogs.com/jsgnadsj/p/6196054.html

2016-12-19 00:01:00 122

转载 C指针问题

<!DOCTYPE html>多级c指针传值问题/* GitHub stylesheet for MarkdownPad (http://markdownpad.com) // Author: Nicolas Hery - http://nicolashery.com // Version: b13fe65ca28d2e568c6ed5d7f06581183d...

2016-07-17 01:58:00 110

转载 C++基础——1.变量和基本类型(基于c++11)

C++11类型基本类型字面值常量(literal)比如:一个形如42的值,即为常量变量初始值初始化不是赋值,初始化是创建变量的时候给一个初始值;而赋值是擦除当前值,用新值代替。列表初始化c++11允许使用{}来初始化变量。比如:int units_sold{0};//表示该值被初始化为0同理,对于vertor:vector<string> ast...

2016-02-27 01:00:00 259

转载 linux中的部分宏

链表struct list_head{ struct list_head *next,*prev;}链表声明#define LIST_HEAD_INIT(name) {&(name),&(name)}================================================1.静态初始化#define L...

2016-01-31 17:24:00 159

转载 内核调试技巧

内核调试技巧printk打印级别| FLAG | ||-------------|---||KERN_EMERG |<0>||KERN_ALERT |<1>||KERN_CRIT |<2>||KERN_ERR |<3>||KERN_WARNING |&...

2016-01-31 01:33:00 94

转载 SMP IRQ Affinity

转:非常有用的方法,调式神器SMP IRQ AffinityBackground:Whenever a piece of hardware, such as disk controller or ethernetcard,needs attention from the CPU, it throws aninterrupt. The inte...

2016-01-03 23:18:00 195

转载 const

pointer to const:指向常量的指针(被指向的对象是常量)const pointer:常量指针(指针本身是常量) [对被指向对象的修饰] * [指针本身的修饰]====================================================指向常量的指针:被指向的对象是常量,修饰的是被指向的对象。不能用于修改其所指对象...

2016-01-02 00:10:00 84

转载 typedef

用途一:定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针型的多个对象。用途二:用在旧的C的代码中(具体多旧没有查),帮助struct。用途三:用typedef来定义与平台无关的类型。用途四:为复杂的声明定义一个新的简单的别名。---------------------------------1.用的最多的是结构的定义:typede...

2016-01-01 02:10:00 97

转载 C指针

非原创,感觉作者写的很有意思,特拿来记录一番。int a,int *a,第一行代码:a是int型第二行代码:*a是int型, a是int型指针同理int (*p)(int)(*p)(int) 是int型,后面带一个(int),则(*p)是函数,那么p是函数指针。那么函数指针的指针呢?int *(*p)(in...

2016-01-01 01:07:00 67

转载 算法学习记录-栈的应用--表达式运算

前面做了栈的基本操作总感觉需要做一个实际的例子来检验一下。这里我将用栈来做一个简单的四则运算。目标比较简单:做一个带小括号(“()”)的四则运算,如果要加入到中括号(“[]”)或者大括号(“{}”),依次类推。求一个表达式:用下面这个算是做例子,程序最后应该可以算出任何带小括号的运算。3+(32-6)*9+5*3-(3*(65-15)/5)+12;方...

2014-08-05 18:43:00 89

转载 Java学习——面对对象的思想入门

本文是看过《head first Java》之后的一点感悟,写点东西帮忙以后回忆,Java目前在我的工作中用到还不多,而我又对面对对象的编程非常的感兴趣。曾经在MFC平台上写过一个比较大的程序,但是看了本书后,发现之前程序中漏洞百出,而且对面对对象的思想理解不深刻,感觉需要重新学习一遍。C++和JAVA的面对对象还是很有差距的,但是他们的基本思想是相同,抓住思想再学习语言会...

2013-12-30 22:19:00 132

转载 算法学习记录-查找——平衡二叉树(AVL)

AVL:本章参考了严蔚敏的《数据结构》,程杰《大话数据结构》  上一章的排序二叉树对于我们寻找无序序列中的元素的效率有了大大的提高。查找的最差情况是树的高度。这里就有问题了,将无序数列转化为二叉排序树的时候,树的结构是非常依赖无序序列的顺序,这样会出现极端的情况。【如图1】:  这样的一颗二叉排序树就是一颗比较极端的情况。我们在查找时候,效率依赖树的高度,所以不希...

2013-12-17 13:58:00 139

转载 算法学习记录-查找——二叉排序树(Binary Sort Tree)

二叉排序树 也称为 二叉查找数。它具有以下性质:若它的左子树不空,则左子树上所有结点的值均小于它的根结点的值。若它的右子树不空,则右子树上所有结点的值均大于它的根结点的值。它的左、右子树也分别为二叉排序树。  之前的查找折半查找、斐波那契查找、插值查找的前提条件就是序列为有序,为顺序存储结构。我们在查找一章提过,查找还有动态查找,比如插入和删除操作...

2013-12-12 15:50:00 173

转载 算法学习记录-查找——折半查找(Binary Search)

以前有个游戏,一方写一个数字,另一方猜这个数字。比如0-100内一个数字,看谁猜中用的次数少。这个里面用折半思想猜会大大减少次数。步骤:(加入数字为9)1.因为数字的范围是0-100,所以第一次猜50(100的一半)2.缩小范围到0-50,根据对方回应数大了,再猜25(50的一半)3.缩小范围到0-25,对方回应数大了,再猜134.缩小范围到0-13,对方回应数大...

2013-12-10 10:23:00 186

转载 算法学习记录-查找

查找:操作有(1).查询某个“特定的”数据元素是否在查找表中;   (2).检索某个“特定的”数据元素的各种属性; (3).在查找表中插入一个元素   (4).删除某一个元素若只完成前两个操作,称为“静态查找表”。若在查找过程中同时插入查找表中不存在的数据元素,或者从查找表中删除已经存在的某个数据元素,则称为“动态查找表”查找操作性能...

2013-12-10 10:08:00 61

转载 算法学习记录-排序——快速排序

快速排序快速排序由图灵奖获得者Tony Hoare26岁设计出来,这个大牛有兴趣的可以google下。前面讲过 直接插入排序、简单选择排序、冒泡排序 这几个我们能够最直接想出来的排序方法。(时间复杂度都是 O(N2))后来人们一直寻找能够打破时间复杂度O(N2)的限制。先后有 希尔排序,它是直接插入排序的升级。(每趟插入的步长从大到小)堆排序,它是简单选择...

2013-12-09 18:05:00 91

转载 算法学习记录-排序——归并排序

归并排序  利用了完全二叉树的堆排序在效率上提高了不少。但是堆排序主要耗费时间在调整堆上,算法效率也不够稳定。对于二叉树的应用,还有没有其他方法能够保持算法的效率,也能够使其是一个稳定的算法。(堆排序不够稳定)具体效率可以查看《算法导论》、《数据结构与算法》(严蔚敏)  想想二叉树的结构,如果我们比较两个数,我们想想将两个树作为叶子,比较结果存放在根中。如果...

2013-12-07 11:40:00 109

转载 算法学习记录-排序——堆排序

堆排序问题提出:  前面写过 简单选择排序 讲过,要找出n个数据中最小的值,那么需要比较n-1次。仔细想想,比较第一趟的时候,第一个哨兵下标元素与每一个元素比较,如果哨兵元素不是最小的,那么会发生交换,记交换后的元素下标为swap。继续比较第二趟 到 第n趟时候,每一趟都会有元素与swap下标元素比较,但是这个比较之前就已经比较了,只是没有保存下来。能不能通过方法能...

2013-12-06 15:10:00 115

转载 算法学习记录-排序——希尔排序

希尔排序:  直接插入排序在在本身数量比较少的时候情况下效率很高,如果待排数的数量很多,其效率不是很理想。  回想一下直接插入排序过程,排序过程中,我们可以设置一条线,左边是排好序的,右边则是一个一个等待排序,如果最小的那个值在最右边,那么排这个最小值的时候,需要将所有元素向右边移动一位。  是否能够减少这样的移位呢?  我们不希望它是一步一步的移动,而是大步大...

2013-12-05 15:26:00 192

转载 算法学习记录-排序——插入排序(Insertion Sort)

插入排序:在《算法导论》中是这样描述的这是一个对少量元素进行排序的有效算法。插入排序的工作机理与打牌时候,整理手中的牌做法差不多。在开始摸牌时,我们的左手是空的,牌面朝下放在桌子上。接着,一次从桌子上摸起一张牌,并将它插入到左手一把牌中的正确位子上。为了找到这个正确的位置,要将它与手中已有的每一张牌从右到左进行比较,无论什么时候,左手的牌都是排好序的。算...

2013-12-04 17:20:00 113

转载 算法学习记录-排序——选择排序(Simple Selection Sort)

之前在冒泡排序的附录中提到可以在每次循环时候,不用交换操作,而只需要记录最小值下标,每次循环后交换哨兵与最小值下标的书,这样可以减少交换操作的时间。这种方法针对冒泡排序中需要频繁交换数组数字而改进。以此类推。。。代码: 1 void selectionSort(myDataType *ary,int len) 2 { 3 int i...

2013-12-04 16:20:00 77

转载 算法学习记录-排序——冒泡排序(Bubble Sort)

冒泡排序应该是最常用的排序方法,我接触的第一个排序算法就是冒泡,老师也经常那这个做例子。冒泡排序是一种交换排序,基本思想:通过两两比较相邻的记录,若反序则交换,知道没有反序的记录为止。例子:依次类推。这里可以看出,每次比较从最后一个开始,向前比较,若反序则交换;每次都保证了是两两相邻的记录比较。冒泡排序的代码: 1 void...

2013-12-04 16:04:00 136

转载 算法学习记录-排序

排序是非常基本的一个操作。排序也分许多方法,可能会有人想,为什么不用最一种最快最好的方法而非要搞出那么多方法呢?因为各种方法有各种方法的用处,适用于不同的情况。排序分:内排序 和 外排序内排序:在排序整个过程中,所有的欲排序记录都存放在内存中。外排序:欲排序的个数多,不能同时放置内存,整个排序过程需要在内外存之间多次交换。内排序:在排序过程中,所有元...

2013-12-04 14:40:00 87

转载 算法学习记录-图——应用之关键路径(Critical Path)

之前我们介绍过,在一个工程中我们关心两个问题:(1)工程是否顺利进行(2)整个工程最短时间。之前我们优先关心的是顶点(AOV),同样我们也可以优先关心边(同理有AOE)。(Activity On Edge Network)看看百度百科上解释:AOE网:Activity on edge network若在带权的有向图中,以顶点表示事件,以有向边表示活...

2013-12-02 17:29:00 294

转载 算法学习记录-图——应用之拓扑排序(Topological Sort)

这一篇写有向无环图及其它的应用:清楚概念:有向无环图(DAG):一个无环的有向图。通俗的讲就是从一个点沿着有向边出发,无论怎么遍历都不会回到出发点上。有向无环图是描述一项工程或者系统的进行过程的有效工具,比如办公室,到工商局里面注册的时候,他会提示你一个流程,这个流程就是一个有向无环图。第一步不做,第二步就做不了。在其期间关心两个问题:1.工程是否顺利?(拓扑排序...

2013-11-25 12:18:00 166

转载 算法学习记录-图——最小路径之Floyd算法

floyd算法:解决任意两点间的最短路径的一种算法,可以正确处理有向图或负权的最短路径问题,同时也被用于计算有向图的传递闭包。设为从到的只以集合中的节点为中间节点的最短路径的长度。若最短路径经过点k,则;若最短路径不经过点k,则。因此,。在实际算法中,为了节约空间,可以直接在原来空间上进行迭代,这样空间可降至二维。我的理解为:folyd算法...

2013-11-18 19:08:00 93

转载 算法学习记录-图——最短路径之Dijkstra算法

在网图中,最短路径的概论:两顶点之间经过的边上权值之和最少的路径,并且我们称路径上的第一个顶点是源点,最后一个顶点是终点。维基百科上面的解释:这个算法是通过为每个顶点v保留目前为止所找到的从s到v的最短路径来工作的。初始时,原点 s 的路径长度值被赋为 0 (d[s]= 0),若存在能直接到达的边(s,m),则把d[m]设为w(s,m),同时把所有其他(s...

2013-11-17 14:22:00 200

转载 算法学习记录-图——最小生成树之Kruskal算法

之前的Prim算法是基于顶点查找的算法,而Kruskal则是从边入手。通俗的讲:就是希望通过 边的权值大小 来寻找最小生成树。(所有的边称为边集合,最小生成树形成的过程中的顶点集合称为W)    选取边集合中权值最小的边,查看边的两个顶点是否能和集合W构成环路,若能构成环路,则舍去;否则选取下一条最小权值边重复上一步。    这里需要注意一个问题,我们从最小权值的边开始...

2013-11-14 21:31:00 107

转载 算法学习记录-图——最小生成树之prim算法

一个连通图的生成树是一个极小的连通子图,它包含图中全部的顶点(n个顶点),但只有n-1条边。最小生成树:构造连通网的最小代价(最小权值)生成树。prim算法在严蔚敏树上有解释,但是都是数学语言,很深奥。最小生成树MST性质:假设N=(V,{E})是一个连通网,U是顶点集V的一个非空子集。若(u,v)是一条具有最小权值(代价)的边,其中u∈U,v∈V-U,则必存...

2013-11-14 00:20:00 172

转载 算法学习记录-图(DFS BFS)

图:目录:1.概念2.邻接矩阵(结构,深度/广度优先遍历)3.邻接表(结构,深度/广度优先遍历)图的基本概念:数据元素:顶点1.有穷非空(必须有顶点)2.顶点之间为边(可空)无向图:边没有方向,用(vi,vj)表示,(vj,vi)也可。有向图:边有方向,称为弧,用<vi,vj>表示。vi尾,vj头简单图...

2013-11-12 17:11:00 113

转载 算法学习记录-线索二叉树

二叉树的结构中可以看到,会有许多空指针,这有浪费了资源。n个节点的二叉树共有n-1条分支。(除了根没有分支)对于这样的结构: | left-child | data | right-child |,总分支指针(2n),空闲指针有(2n-(n-1))=n+1个分支。能不能利用空闲指针呢?通过利用这些空闲指针,方便我们索引这颗二叉树呢?比如我们找到了头,就能够通过头节点的孩子...

2013-11-09 17:47:00 108

转载 算法学习记录-二叉树

树:是n(n>=0)个节点的有限集。n=0时称为空树。在任意一颗非空树中:    (1)有且仅有一个特定的称为根的节点;    (2)当n>1时,其余节点可分为m(m>0)个互不相交的有限集T1,T2、...、Tm,其中       每一个集合本身又是一棵树,并且称为根的子树。节点:a.根节点b.内部节点c.叶结点度...

2013-11-07 19:01:00 136

转载 算法学习记录-栈的应用--进制转化

栈的应用在进制转化过程中,其中10进制转化各种进制用处比较多。原理就是拿十进制的数不停的 去除 进制的模数 得到余数组合就是转化后的数。比如 (255)10 转化为 16进制 时候254/16=15 ...14 ---> E15/16=0...15 ---> F255 即为 0XFE注意到各个结果反过来才是最后的结果。想到栈的特点,这里可以...

2013-11-05 15:58:00 83

转载 算法学习记录-队列

队列与栈不同的是,队列是先进先出(First In First Out),这种结构在操作系统底层调用中广泛应用,比如:键盘输入abc,先输入的a最先显示出来,依次b、c。再比如:在操作系统中,将要处理的任务加入队列中,当cpu有空闲时,出队进行处理。队列和栈一样,也有顺序队列和队链(不知道这个称呼对不对)。这里我们讨论队链:栈中使用的栈顶做标记,...

2013-11-05 14:56:00 65

转载 算法学习记录-栈

栈栈是一个重要的数据结构,在操作系统中应用非常广泛,特别在多任务操作系统中,进程与进程间的调用都需要用到栈。现实中最好的例子我认为是枪的弹夹,把子弹压入到弹夹盒子里面,先放进去的最后才能出来(FILO)frist in last out ,压入子弹的过程叫做进栈。开枪的过程叫出栈。用c来实现栈,主要操作是 初始化,判断空,出栈,进栈等。栈和链表一样可以...

2013-11-05 11:19:00 66

转载 算法学习记录-双链表

单链表缺点是每次都要从头开始索引,不能往回索引,很自然就会想一个办法,希望能够往回索引。这有双链表就产生了。0.双链表结构:typedef struct lNode{ int data; struct lNode* pri; struct lNode* next;}ltNode,*ptNode;增加了一个前驱指针,这有就可...

2013-11-01 15:56:00 71

转载 算法学习记录-单链表

最近学算法,做一个简单记录。把容易出错和混淆的地方记录一下。这里编程语言选择为C。什么是链表? 要搞清楚链表,首先要知道顺序表。顺序表也是我们常说的数组,数组有个最大的特点,它的存储空间在内存上是连续的。数组解决了我们编程中许多问题,如果我们事前不知道需要多大的内存,而我们在C中编程的时候不能够动态的申请数组(不能在程序中这样写:int arr...

2013-11-01 12:51:00 85

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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