Hanani_Jia的博客

计算机科学与技术专业萌新

自定义博客皮肤

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Linux讲解 基础IO-C库接口

  我们在C语言的时候就接触了一些IO接口,用来向文件中写入或者在文件中读取一些数据,例如fopen打开一个文件fclose关闭一个文件,fread读取文件的内容,fwrite向文件中写入内容等等很多接口。 这里我们写一个在C语言下边经常使用的往文件中写内容的程序,这里的fopen函数后边的...

2018-08-28 16:42:16

阅读数 207

评论数 0

剑指offer--左旋字符串

题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果。对于一个给定的字符序列S,请你把其循环左移K位后的序列输出。例如,字符序列S=”abcXYZdef”,要求输出循环左移3位后的结果,即“XYZdefabc”。是不是很简单?OK,搞定...

2018-08-27 16:08:32

阅读数 81

评论数 0

剑指offer--树的子结构

题目描述 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构) class Solution { public: bool HasSubtree(TreeNode* pRoot1, TreeNode* pRoot2) { bool result ...

2018-08-26 19:49:55

阅读数 466

评论数 0

Linux 进程讲解 六 进程地址空间

  我们之前常说程序的地址空间,实际上来说应该是进程的地址空间,进程的地址空间到底是什么?   我们先说一下早起的地址是如何划分的, 在早期的计算机中,要运行一个程序,会把这些程序全都装入内存,程序都是直接运行在内存上的,也就是说程序中访问的内存地址都是实际的物理内存地址。当计算机同时运行多个...

2018-08-24 16:17:41

阅读数 184

评论数 0

剑指offer--二叉树的下一个结点

题目描述 给定一个二叉树和其中的一个结点,请找出中序遍历顺序的下一个结点并且返回。注意,树中的结点不仅包含左右子结点,同时包含指向父结点的指针。 struct TreeLinkNode { int val; struct TreeLinkNode *left; struct TreeL...

2018-08-24 15:24:58

阅读数 141

评论数 0

剑指offer--调整数组顺序使奇数位于偶数前面

题目描述 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变 class Solution { public: void reOrderArray(vector&a...

2018-08-24 09:20:57

阅读数 77

评论数 0

Linux进程讲解 五 进程优先级

   之前我们介绍进程的时候就说过,为什么要有PCB,PCB记录了很多信息,因为我们的程序并不是说,一直在CPU运行直到结束,而是一个进程运行一会,另一个再运行一会。所以来说进程占用CPU应该是一个我们可控的东西,因为有的进程相对来说比较重要,有的就不是很重要。我们就像让CPU先去执行那些比较重要...

2018-08-23 16:45:13

阅读数 394

评论数 0

Linux进程讲解 四 孤儿进程

  上次我们介绍了僵尸进程,僵尸进程是进程的一种状态,我们今天说的是孤儿进程,孤儿进程并不是进程的一种状态,它是一类进程的名字,僵尸进程是因为我们的子进程突然死亡,并且我们的父进程没有查看他的死亡原因,他就会一直保留着自己的task_struct里边存储着他的一些死亡信息等等,这就形成了僵尸进程,...

2018-08-23 15:06:37

阅读数 438

评论数 0

剑指offer--矩形覆盖

题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? class Solution {       public:               int rectCover(int number) { ...

2018-08-23 14:42:37

阅读数 60

评论数 0

Linux man指令

  man命令是Linux下的帮助指令,通过man指令可以查看Linux中的指令帮助、配置文件帮助和编程帮助等信息   man指令的选项并不是很多: -a:在所有的man帮助手册中搜索 -f:等价于whatis指令,显示给定关键字的简短描述信息 -p:指定内容时使用分页程序 -M:指定m...

2018-08-21 20:22:44

阅读数 184

评论数 0

剑指offer--整数中出现1的次数

题目描述 求出1~13的整数中1出现的次数,并算出100~1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1...

2018-08-21 19:59:29

阅读数 63

评论数 0

剑指offer--连续子数组的最大和

题目描述 HZ偶尔会拿些专业问题来忽悠那些非计算机专业的同学。今天测试组开完会后,他又发话了:在古老的一维模式识别中,常常需要计算连续子向量的最大和,当向量全为正数的时候,问题很好解决。但是,如果向量中包含负数,是否应该包含某个负数,并期望旁边的正数会弥补它呢?例如:{6,-3,-2,7,-15...

2018-08-20 15:39:55

阅读数 61

评论数 0

Linux 进程讲解 三 进程状态

  之前在介绍PCB的时候给大家说过PCB中有一项是保存我们进程的状态,我们可以看一下Linux内核里边的源码里边的定义 可以看出这个数组里边有7种状态: R(running)是我们的运行状态,但是这并不代表着这个程序一定正在执行,他很有可能是在我们的运行队列里边,也有很多人会把这个状态分...

2018-08-19 20:56:50

阅读数 461

评论数 0

剑指offer--统计一个数字在排序数组中出现的次数

题目描述 统计一个数字在排序数组中出现的次数。 class Solution { public: int GetNumberOfK(vector<int> data, int k) { int length = data.size();//求...

2018-08-19 16:10:09

阅读数 449

评论数 1

Linux进程讲解 fork函数

  我们在学习进程的时候不得不提到一个函数fork(),fork还有一个名字叫做分叉函数,我们可以通过fork函数来创建一个和我们当前进程一样的新进程,并且我们通常把新创建的进程叫做子进程,把之前就存在的进程叫做父进程,并且子进程继承了父进程的整个地址空间,包括了程序上下文,包括堆栈体制,甚至我们...

2018-08-19 14:35:23

阅读数 462

评论数 1

Linux 进程讲解 一

  最近刚刚接触了进程的概念,之前看了很多文章来讲解什么是进程什么是线程,简单的来说进程就是现在正在执行的一个程序, 我们在windows下打开任务管理器里边就有进程这一项,简单来看我们运行着哪些程序进程里边就有哪些,但是又不止这些还有很多我们看不懂不知道的后台机进程。复杂点来说就是百度对进...

2018-08-18 19:50:54

阅读数 232

评论数 0

剑指offer---两个链表的第一个公共结点

题目描述 输入两个链表,找出它们的第一个公共结点。 struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } }; class Solution { p...

2018-08-18 10:21:41

阅读数 140

评论数 0

剑指offer--删除链表中的重复结点

题目描述 在一个排序的链表中,存在重复的结点,请删除该链表中重复的结点,重复的结点不保留,返回链表头指针。 例如,链表1->2->3->3->4->4->5 处理后...

2018-08-17 08:45:50

阅读数 194

评论数 0

剑指offer--链表环入口结点

struct ListNode { int val; struct ListNode *next; ListNode(int x) : val(x), next(NULL) { } }; class Solution { public: ListNode* EntryNodeOfLoop(L...

2018-08-16 10:25:16

阅读数 447

评论数 0

gcc编译程序四个阶段 预处理、编译、汇编、链接

  我们在windows下的时候大部分通过vs等编译器来编写我们的代码,这种编译器有一个统称的名字叫做IDE(Integrated Development Environment)中文名字是集成开发环境,为什么叫它集成开发环境,是因为你只需要安装一个vs你就可以做到对代码的编辑、编译、调试等等,每...

2018-08-16 09:30:05

阅读数 2970

评论数 0

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