自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (2)
  • 收藏
  • 关注

原创 判断字符串有重复字符

题目判断英文字符串中有重复字符代码#define BOOL int#define TRUE 1#define FALSE 0int arr[256] = {0};BOOL check1(char *str){ size_t len = strlen(str); if (len > 256) return TRUE; size_t i; fo

2016-07-30 17:11:32 1357

转载 Linux内存寻址之分段机制

前言最近在学习Linux内核,读到《深入理解Linux内核》的内存寻址一章。原本以为自己对分段分页机制已经理解了,结果发现其实是一知半解。于是,查找了很多资料,最终理顺了内存寻址的知识。现在把我的理解记录下来,希望对内核学习者有一定帮助,也希望大家指出错误之处。分段到底是怎么回事相信学过操作系统课程的人都知道分段分页,但是奇怪的是书上基本没提分段分页是怎么产生的,这就导致我们知其然不知其所以然。下面

2016-07-30 10:30:01 781

转载 Linux 技巧:让进程在后台可靠运行的几种方法

想让进程在断开连接后依然保持运行?如果该进程已经开始运行了该如何补救? 如果有大量这类需求如何简化操作?我们经常会碰到这样的问题,用 telnet/ssh 登录了远程的 Linux 服务器,运行了一些耗时较长的任务, 结果却由于网络的不稳定导致任务中途失败。如何让命令提交后不受本地关闭终端窗口/网络断开连接的干扰呢?下面举了一些例子, 您可以针对不同的场景选择不同的方式来处理这个问题。nohup/s

2016-07-29 10:41:13 439

转载 Linux的进程优先级

Linux的进程优先级为什么要有进程优先级?这似乎不用过多的解释,毕竟自从多任务操作系统诞生以来,进程执行占用cpu的能力就是一个必须要可以人为控制的事情。因为有的进程相对重要,而有的进程则没那么重要。进程优先级起作用的方式从发明以来基本没有什么变化,无论是只有一个cpu的时代,还是多核cpu时代,都是通过控制进程占用cpu时间的长短来实现的。就是说在同一个调度周期中,优先级高的进程占用的时间长些,

2016-07-22 10:20:43 4571

转载 Linux的IO调度

前言IO调度发生在Linux内核的IO调度层。这个层次是针对Linux的整体IO层次体系来说的。从read()或者write()系统调用的角度来说,Linux整体IO体系可以分为七层,它们分别是:VFS层:虚拟文件系统层。由于内核要跟多种文件系统打交道,而每一种文件系统所实现的数据结构和相关方法都可能不尽相同,所以,内核抽象了这一层,专门用来适配各种文件系统,并对外提供统一操作接口。文件系统层:

2016-07-21 21:32:34 1830

原创 关于斐波那契数列

斐波那契数列代码1// 分分钟写出来的代码int fab(int n){ if (n == 0 || n == 1) return n; return fab(n-1) + fab(n-2);}分析代码1递归使整个代码非常简洁,然而代码是有问题的考虑n值特别大的情况,上万的一个值,递归可能使栈溢出,递归调用是非常耗时的操作,可是

2016-07-21 18:47:20 641

转载 Linux内存中的Cache真的能被回收么?

在Linux系统中,我们经常用free命令来查看系统内存的使用状态。在一个RHEL6的系统上,free命令的显示内容大概是这样一个状态:[root@tencent64 ~]# free total used free shared buffers cachedMem: 132256952 72571772 59

2016-07-21 10:54:41 947

转载 Linux的内存回收和交换

前言Linux的swap相关部分代码从2.6早期版本到现在的4.6版本在细节之处已经有不少变化。本文讨论的swap基于Linux 4.4内核代码。Linux内存管理是一套非常复杂的系统,而swap只是其中一个很小的处理逻辑。希望本文能让读者了解Linux对swap的使用大概是什么样子。阅读完本文,应该可以帮你解决以下问题:swap到底是干嘛的? swappiness到底是用来调节什么的?‘’什

2016-07-21 09:59:27 3784

转载 Linux的进程间通信 - 管道

前言管道是UNIX环境中历史最悠久的进程间通信方式。本文主要说明在Linux环境上如何使用管道。阅读本文可以帮你解决以下问题:什么是管道和为什么要有管道?管道怎么分类?管道的实现是什么样的?管道有多大?管道的大小是不是可以调整?如何调整?什么是管道?管道,英文为pipe。这是一个我们在学习Linux命令行的时候就会引入的一个很重要的概念。它的发明人是道格拉斯.麦克罗伊,这位也是UNIX上

2016-07-20 17:51:52 703

原创 tr命令

tr命令基本用法格式: tr [OPTION] … SET1 [SET2] 功能: 转换或删除字符 描述: tr 指令从标准输入设备读取数据,经过字符串转译后,输出到标准输出设备。通过使用 tr,您可以非常容易地实现 sed 的许多最基本功能。您可以将 tr 看作为 sed 的(极其)简化的变体:它可以用一个字符来替换另一个字符,或者可以完全除去一些字符。您也可以用它来除去重复字符。这就是所有

2016-07-16 09:21:45 616

原创 xargs命令

xargs简介经典应用模式:cmd1 | xargs [-option] cmd2 没有cmd2,默认使用echo输出用途构造参数列表并运行命令,即将接受的参数传递给后面的cmd2命令执行将多行输入转换成单行(特殊功效)优点将输入参数整理后,去除<newline>换行符,以一个列表形式处理避免参数过长引发的问题,使用 xargs -n 参数适当控制,对于经常产生大量输出的命令如find、

2016-07-16 09:17:31 831

转载 Linux可执行文件的启动及命令行参数和环境变量的传递

问题的由来我们知道,普通的C程序可以从命令行上接收参数,也可以使用、设置SEHLL环境变量(getenv,setenv)。/*一个简单的C例子 test.c*/ #include "stdio.h" extern char** environ; /*C库定义的全局变量,环境变量字符串数组的起始地址*/ int main(int argc, char* argv[]) { int

2016-07-12 20:32:28 13774

原创 Linux中su命令

su 、su - 、su root 、su - root 的区别man su 得到帮助文档如下:- ,-l, –login ; make the shell a login shell ;意为改变身份是也同时变更工作目录,以及HOME, SHELL, USER, LOGNAME,此外,也会变更PATH变量;su -root 是切换到root账号使用,使用的是root用户的环境变量;su roo

2016-07-12 19:11:37 1465

转载 find命令详解

前言find命令是我们日常工作中比较常用的Linux命令。全面的掌握这个命令可以使很多操作达到事半功倍的效果。如果对find命令有以下这些疑惑,本文都能帮你解决:find命令的格式是什么?参数中出现+或-号是什么意思?比如find / -mtime +7与find / -mtime -7什么区别?find /etc/ -name “passwd” -exec echo {} \;和find /

2016-07-11 16:27:49 2577

原创 Ubuntu的apt-get命令以及一些常见错误

apt-get基本命令常用命令 命令 含义 apt-cache search package 搜索包 apt-cache show package 获取包的相关信息,如说明、大小、版本等 apt-cache depends package 了解使用依赖 apt-cache rdepends package 查看该包被哪些包依赖 sudo apt-get in

2016-07-11 09:42:29 20279

原创 平衡二叉树

AVL树的简介AVL树(即平衡二叉树)是自平衡的二分查找树。在AVL树中任何节点的两个子树的高度差值为一。因此,它也是一个棵在二分查找树(BST)且为二分查找树的改进版。特点AVL树以一棵二分查找树(BST)自平衡:每个节点的左右子树高度相差绝对值不超过1AVL树的实现// avl树节点的定义typedef struct AvlNode { int key;

2016-07-10 22:04:09 368

原创 二分查找

代码二分查找查找key的下标// 二分查找的迭代版本/* 注:如果数组索引使用整数求mid时,l+h可能发生溢出*/int binarySearch(int a[], int n, int key) { int l = 0; int h = n-1; int mid; while (l <= h) {

2016-07-08 14:15:38 445

转载 sed命令进阶

前言本文主要介绍sed的高级用法,在阅读本文之前希望读者已经掌握sed的基本使用和正则表达式的相关知识。本文主要可以让读者学会如何使用sed处理段落内容。问题举例日常工作中我们都经常会使用sed命令对文件进行处理。最普遍的是以行为单位处理,比如做替换操作,如:[root@TENCENT64 ~]# head -3 /etc/passwd root:x:0:0:root:/root:/bin/bas

2016-07-07 09:24:25 1239

原创 Linux系统管理

进程管理进程管理简介进程是正在执行的一个程序或命令,每一个进程都是一个运行的尸体,都有自己的 地址空间,并占用一定的系统资源。进程的查看进程的结束进程优先级的修改工作管理系统资源查看系统定时任务

2016-07-06 20:13:21 5878

原创 Shell编程之条件判断和流程控制

流程控制语句条件式判断语句1 按照文件类型进行判断 测试选项 作用 -b 文件 判断该文件是否存在,并且是否为块设备文件(是块设备文件为真) -c 文件 判断该文件是否存在,并且是否为字符设备文件(是字符设备文件为真) -d 文件 判断该文件是否存在,并且是否为目录文件(是目录为真) -e 文件 判断该文件是否存在(存在为真) -f 文件 判断该文件是否

2016-07-02 16:30:25 693

VisualC++编程高手.rar

vc编程高级编程,以及编程中通常要用到的技术。

2011-07-21

WINDOWS编程MFC类库中文详解

windowsAPI编程中文MFC类库详解,方便英文吃力的同志

2010-06-14

空空如也

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

TA关注的人

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