自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 UDP windows网络编程(新浪博客文章迁移)

http://blog.sina.com.cn/s/blog_c5c410ad0102xcfe.html

2021-04-12 23:14:21 83

原创 2021-04-12 Linux操作系统(新浪博客迁移链接)

Linux操作系统Linux操作系统 | Makefilehttp://blog.sina.com.cn/s/blog_c5c410ad0102xcfe.htmlLinux操作系统 | GDB调试C程序http://blog.sina.com.cn/s/blog_c5c410ad0102xc6g.htmlLinux操作系统 | Kill命令详解http://blog.sina.com.cn/s/blog_c5c410ad0102xc48.html...

2021-04-12 23:10:58 130

原创 《人月神话》读书笔记

序言首先谈一下书的作者Frederick P.Brooks,Jr.是北卡罗来纳大学 Kenan-Flagler商学院的计算机科学教授,北卡来罗来纳大学位于美国北卡来罗来纳州的查布尔希尔。Brooks 被认为是“IBM 360系统之父”,他担任了 360 系统的项目经理,以及 360 操作系统项目设计阶段的经理。凭借在上述项目的杰出贡献,他、Bob Evans 和Erich Bloch 在 19...

2018-09-15 13:44:50 219

原创 【笔试题】打印字符串所有子集

7、有一个集合由A-Z这26个字母组成,打印这个集合的所有子集,每个子集一行,写C代码实现,不能使用递归(腾讯面试题)思路:J作为一个可以移动的指针,i代表数据的范围(所有可能性),J每循环结束,从缓冲区刷到终端void SubSet(int n){ const char *str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int maxnum = 1<...

2018-09-15 13:43:41 457

原创 【面试题】KMP算法实现

what!?KMP算法是干嘛的?我们可能都知道朴素算法,主要是解决两个字符串的匹配问题,其实KMP算法可以说和朴素算法是师出同门,为什么这么讲呢?首先我们对比一下两个的代码,大家就知道怎么回事了。朴素算法int BF(const char *str1, const char *str2, int pos) //朴素算法时间复杂度O(n*m){ if(pos < 0...

2018-09-15 13:42:13 649

原创 【笔试题】输入年月日,输出是这一年的第几天

#include<iostream>using namespace std;bool isLeapYear(int year){ if(year%4==0&&year%100!=0 || year%400==0) { return true; } else { return false; }}i...

2018-09-15 13:37:55 608

原创 【笔试题】将奇数放前边,偶数放后边

#include<iostream>#include<vector>#include<algorithm> #include<functional>using namespace std;//奇数顺序、偶数逆序vector<int> change(vector<int> arr){ vector<i...

2018-09-14 21:44:14 494

原创 【面试题】求链表的环入口点

环入口点:我们设A是链表的起点,B是环的入口点,C是环内快慢指针的相遇点。两个快慢指针定义为slow和fast.slow走的路程:A->B->C;fast走的路程:A->B->C->B->C;2*(x+y)=x+y+z+y        =》       x=z;即A->B的路程等于C->B的路程;//环的入口点void Fi...

2018-09-14 10:42:40 429

原创 【数据结构】堆排序

堆排序:1、首先从最后一个父节点开始调整,保证父节点大于孩子节点。2、建堆结束后,将第一个元素和最后一个元素进行交换,这样堆结构发生变化,继续进行堆调整。void *swap(int *a,int *b){ int tmp=*a; *a=*b; *b=tmp;}void heap_ajust(int *arr,int start,int end){ int...

2018-09-12 18:04:12 191

原创 【Linux】如何创建一个守护进程?

如何创建一个守护进程? 需要最主要的是:为什么会需要两次fork()?因为,第一次fork()将父进程的会话期、进程组相关信息进行了copy,所以这时候的子进程还不能算是独立进程组之外的进程,所以需要将子进程独立处理,所以调用setsid()先判断子进程是否是进程组的组长,如果是之前进程组的组长,那么调用失败,否则调用成功,子线程成为新的进程组组长。这时候调用fork(),将父进程退出...

2018-09-12 15:23:10 335

原创 二叉树的层次遍历

#include<iostream>using namespace std;typedef struct Node{ int value; struct Node*left; struct Node*right;};vector<vector<int>>levelOrder(Node*root){ vector<vec...

2018-09-11 19:30:12 299

原创 【面试题】打印所有子集

7、有一个集合由A-Z这26个字母组成,打印这个集合的所有子集,每个子集一行,写C代码实现,不能使用递归(腾讯面试题)思路:J作为一个可以移动的指针,i代表数据的范围(所有可能性),J每循环结束,从缓冲区刷到终端void SubSet(int n){ const char *str = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; int maxnum = 1<...

2018-09-09 17:36:27 683

原创 【数据结构】二叉树的重构

问题描述:已知二叉树的先序和中序序列,然后还原该二叉树。(1)首先通过先序遍历找到首元素即为根节点。(2) 再通过中序遍历找到根节点的左边序列,即为左子树,根节点的右边即为右子树。(3)再对二叉树的左子树和右子树进行递归,递归到叶子结点,递归结束。struct TreeNode* reConstructBinaryTree(vector<int> pre,vector<int&g...

2018-04-07 21:25:42 428

原创 【剑指offer】打印链表倒数第k个元素

针对该问题提供4种思路:思路1:采用快慢指针,初始都指向头结点,让指针p先走k个结点,然后p和q一起走,p->next为NULL返回q。思路2:利用栈结构,让链表先入栈,然后顺序找到第k个结点。思路3:对链表进行头插法逆置,然后顺序遍历找到第k个结点。思路4:通过定位法,首先遍历数组,找到结点的数量n,然后得到倒数第k个结点的位置为n-k+1.思路1的代码实现 ListNode* Fi...

2018-04-07 19:52:40 166

原创 【C++迭代器】迭代器失效问题

问题描述:输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。这是剑指offer上的一道经典习题,我们首先可以想到的解决方案是:再创建一个临时数组把偶数先存放起来,然后把临时空间的数据插入到原数组。代码如下:void reOrderArray(vector<int> ...

2018-04-07 14:35:16 244

原创 【函数传参】值、指针和引用的区别

函数传参:(1)传指针和传值的时候,不可以改变指针的指向,但是可以修改指针所指向的数据。传引用时可以修改所引用的值。(2)传值的时候可以引用值,不可以修改值。(3)传值和指针时都会生成临时量,传引用不会生成临时量。(4)传指针引用时,既可以修改指针指向,也可以修改指针所指向的值。啥话也不说直接上代码:int &r_val=val;int *p_ptr=ptr;void* tmp;tm...

2018-04-06 21:53:27 468

原创 【剑指offer】数组中找两个不重复数字

问题描述:数组中除了两个数之外,其他数都出现两次,找出数组中两个只出现一次的数字。解题思路:首先可以思考这样的情况,两个相同的数字进行异或,异或的结果等于0。所以我们可以以此作为解题的突破口。如果只有一个数字的话,那么我们让所有的数字分别进行异或,最终得到的结果就是这个只出现一次的数,然后定义一个指针带出数据即可。   可是问题是有两个数据,我们通过异或每一次只能筛选一个数字,是不是可以通过怎样的...

2018-04-06 16:50:50 1580

原创 【数据结构】单链表的原地逆置

class Solution {public:       ListNode* ReverseList(ListNode* head) {        if(head==NULL)        {            return NULL;        }         ListNode *p,*q;         p=head->next;         head->...

2018-04-04 19:32:27 733

原创 Linux——fork面试题讨论

#include <stdio.h>#include <sys/types.h>#include <unistd.h>int main(void){ int i; for(i=0; i<2; i++){ fork(); printf("-"); } wait(NULL); wait(NULL...

2018-04-04 15:49:04 348

空空如也

空空如也

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

TA关注的人

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