Ubuntu使用apt-get upgrade升级时出错

今天在按照常规的sudo apt-get update更新软件列表后,再使用sudo apt-get upgrade升级软件时,出现了以下的错误: 正在设置 linux-image-extra-4.4.0-97-generic (4.4.0-97.120) ... run-parts: exe...

2017-10-15 11:12:49

阅读数 2299

评论数 0

C/C++中volatile关键字详解

1.为什么用volatile? c/c++中的volatile关键字和const对应,用来修饰变量,通常用于建立语言级别的memory barrier。这是BS在“The C++ Programming Language”对volatile修饰词的说明: "A volatile spe...

2017-08-27 00:31:31

阅读数 188

评论数 0

经典动态规划问题总结

动态规划引入 首先我们以一个最基本的例子来分析——菲波那切数列。 我们都知道,菲波那切数列的递推公式f(n) = f(n-1)+f(n-2) (这里我就说明一般情况,不列举边界条件了),很简单,如果我们用递归的方法来求解f(n),两三行代码就出来了。那么我们深入分析一下这样有什么问题? f(...

2017-08-16 17:25:37

阅读数 331

评论数 0

环形链表插值

在一个环形单链表中插入一个值为val的结点,使得插入后的链表仍然有序。 分析:我们设置两个指针,分别指向链表中的某一个结点和下一个结点,如果val的值在其中间,则将对应结点插入这两个结点中间,如果val的值比所有的结点值都大,则插入在头结点的前面,如果val的值比所有的值都小,则也插入在...

2017-08-09 08:46:31

阅读数 286

评论数 0

最长无重复字符子串

给定一个字符串,求出其最长的无重复的字符子串的长度。 例:给定字符串str = “abcdahisjgdb”,则其最长无重复子串为“bcdahisjg”,长度为9。 思路:我们遍历字符串,计算以每一个字符开头的所有无重复子串的长度,最后比较这些长度,找出最大的一个。 在每一次的循环中...

2017-08-07 20:47:36

阅读数 263

评论数 0

字符串拼接最小字典

给定一个字符串数组,找到一种拼接顺序,使得所有小字符串拼接成的大字符串在所有可能的拼接中字典序最小。 例如:给定strArr = {"bac", "bd"},n = 2。则有两种拼接顺序bacbd和bdbac,显然第一种拼接的字典序要小于第二种。 ...

2017-08-07 16:40:13

阅读数 419

评论数 0

字符串的移位

给定一个字符串str及其长度len,将其前面n个字符移动到字符串的尾部,将后面的(len-n)个字符串移动到字符串的前面。要求:算法的额外空间复杂度为O(1)。 例:str = “ABCEF”,len = 5, n = 3,则移位后的字符串str = “EFABC”。 思路:如果对空间...

2017-08-07 16:11:44

阅读数 314

评论数 0

排序数组中的相邻两数最大差值

给定一个数组A及其大小n,求其排序后的相邻两数的最大差值。(注:要求时间复杂度为O(n)) 思路:题目要求对排序后的数组进行操作,显然需要先对数组进行排序。如果没有要求时间复杂度,那么可以有很多种排序算法,如快速排序、堆排序、归并排序等等。但是这里要求时间复杂度为O(n),就不能用上述常规的排...

2017-08-07 10:45:06

阅读数 827

评论数 0

Linux用户空间和内核空间详解

Linux驱动程序一般工作在内核空间,但也可以工作在用户空间。下面我们将详细解析什么是内核空间,什么是用户空间,以及如何判断它们。 Linux简化了分段机制,使得虚拟地址与线性地址总是一致,因此,Linux的虚拟地址空间也为0~4G。Linux内核将这4G字节的地址空间分为两部分。将最高的1G字节...

2017-07-21 10:52:41

阅读数 228

评论数 0

从给定数组中找出最大的两个数——二分递归

分析1:对于给定数组找出其中最大的两个数,很容易想到的就是遍历数组。首先遍历整个数组,找出最大的一个元素并记录下该位置;然后分别遍历该位置之前的区间和该位置之后的区间,分别找出这两个子区间的最大值,然后比较这两个子区间的最大值,大者即为整个数组的次大元素。显然,整个过程中,用到了三次for循环,算...

2017-05-19 09:19:36

阅读数 1937

评论数 0

字符串中单词的逆转

实现字符串中单词的逆转,即将单词出现的顺序进行逆转。如将"Today is Friday!"逆转为"Friday! is Today"。 思路:不使用额外空间完成,可以分为两步。首先将字符串全部逆转,比如:"Today is Friday!&q...

2017-05-16 09:09:10

阅读数 678

评论数 0

牛课网--直通BAT面试算法精讲课--送优惠码啦

直通BAT面试算法精讲课专属优惠码:AqjvtPi。通过该优惠码报名,可立减10元!  http://www.nowcoder.com/courses/1?coupon=AqjvtPi

2017-05-11 23:27:31

阅读数 496

评论数 0

字符串转换为数字

问题:输入一个表示整数的字符串,把该字符串转换成整数并输出。例如输入字符串“345”,则输出整数345。 分析:可以一次扫描每一个字符,把之前得到的数字乘以10再加上当前字符表示的数字。 需要考虑:1)输入的是否是空字符串;   2)是否有正负号;   3)字符串中是否有非数字的字符,如果...

2017-05-11 22:15:55

阅读数 286

评论数 0

C++的运算符重载

C++中预定义的运算符的操作对象只能是基本数据类型。但实际上,对于许多用户自定义类型(例如类),也需要类似的运算操作。这时就必须在C++中重新定义这些运算符,赋予已有运算符新的功能,使它能够用于特定类型执行特定的操作。运算符重载的实质是函数重载,它提供了C++的可扩展性,也是C++最吸引人的特性之...

2017-04-18 23:24:07

阅读数 130

评论数 0

IP地址类型

最初设计互联网络时,为了便于寻址以及层次化构造网络,每个IP地址包括两个标识码(ID),即网络ID和主机ID。同一个物理网络上的所有主机都使用同一个网络ID,网络上的一个主机(包括网络上工作站,服务器和路由器等)有一个主机ID与其对应。IP地址根据网络ID的不同分为5种类型,A类地址、B类地址、C...

2017-04-14 08:56:36

阅读数 336

评论数 0

字符串—空格替换

题目:请实现一个函数,把字符串中的每个空格图化成“%20”。例如输入“We are happy.”,则输出“We%20are%20happy.”。 分析:有两种情形。一种是直接在原来的字符串上进行修改,从头到尾依次遍历每一个字符,当遇到空格时,我们就用“%20”去替换该空格,由于字符串长度的增加...

2017-04-12 15:14:01

阅读数 294

评论数 0

二维数组中的查找

题目:在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。 分析:按照常规思路,我们对数组中的每一个数进行遍历,那么复杂度是比较大的,为O(n2)。显然,这种做法不仅效率低下,而且没...

2017-04-12 12:29:49

阅读数 214

评论数 0

进程间的通信

进程通信是指进程之间的信息交换。PV操作是低级通信方式,高级通信方式是指以较高的效率传输大量数据的通信方式。高级通信方法主要有以下三类。 共享存储 在通信的进程之间存在一块可以直接访问的共享空间,通过对这片共享空间进行写/读操作实现进程之间的信息交换。在对共享空间进行写/读操作时,需要使用同步...

2017-04-05 10:35:20

阅读数 344

评论数 0

keepalive、pipe、lingering_close

本篇介绍一下nginx中一个http请求相关的概念—keepalive。 在nginx中,对于http1.0与http1.1也是支持长连接的。什么是长连接呢? 我们知道,http请求是基于TCP协议之上的,那么,当客户端在发起请求前,需要先与服务端建立TCP连接,而每一次的TCP连接是需要三次握...

2017-03-30 11:38:39

阅读数 445

评论数 0

SIGPIPE信号

SIGPIPE信号详解 当服务器端kill掉一个已连接的子进程时(也就是close一个连接),如果客户端不理会 该操作,反而写入更多的数据到服务器上,会发生什么呢?这种情况是可能发生的,举例来说,客户可能在读回任何数据之前执行两次针对服务器的写操作,而RST是由其中第一次写操作引发的。 适用于此的...

2017-03-28 16:00:14

阅读数 788

评论数 0

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