
笔试面试
文章平均质量分 51
jun2016425
coolnqjun@163.com
展开
-
链表中倒数第K个结点
求链表中倒数第k个结点思路:(a)第一个指针在链表上先走k-1步 (b)把第二个指针指向链表的头结点 (c) 两个指针一同沿着链表向前走。 当第一个指针指向链表的尾结点时,第二个指针指向倒数第k个结点如图: C代码typedef struct list_node{ int value; struct list_node *next; }list_node;list_node* f原创 2017-09-23 10:43:11 · 328 阅读 · 0 评论 -
反转链表
定义一个函数,输入一个链表的头结点,反转该链表并输出反转后链表的头结点。反转链表因为单向链表,要保存当前结点的preNode和nextNode. 代码如下:C语言代码:typedef struct ListNode{ int valude; struct ListNode* next; }ListNode;ListNode* ReverseList(ListNode* listHe原创 2017-09-23 17:05:58 · 283 阅读 · 0 评论 -
合并两个排序的链表
合并两个排序的链表,如图: 已排序链表1和已排序链表2合并后的已排序链表3过程: (a)链表1的头结点的值小于链表2的头结点的值,因此链表1的头结点是合并后链表的头结点。 (b)在剩余的结点中,链表2的头结点的值小于链表1的头结点的值,因此链表2的头结点是剩余 结点的头结点,把这个结点和之前已经合并好的链表的尾结点链接起来。 递归方式#include <stdio.h>typedef st原创 2017-09-24 11:42:14 · 338 阅读 · 0 评论 -
在网络通讯中,实现把一个int类型的值从服务器传输到另外一个电脑上
1.在网络通讯中,实现把一个int类型的值从服务器传输到另外一个电脑上,需要把一个int类型的变量放入到一个buffer中,和从buffer中取出一个int变量,要求buffer在不同平台之间通过网络传输,获取的int类型的数据是一样的,请写出来两种方法,一种为二进制的格式,另外一种为文本格式,要求:调用c的库函数实现;//aData为输入参数,aBuffer为输入参数,指向要写的内存 int Wr原创 2017-09-20 22:54:05 · 2452 阅读 · 0 评论 -
Singleton模式C++
为什么需要singleton模式呢,因为有时候需要保证一个类仅有一个实例,并且提供一个访问它的全局访问点。 比如游戏里面只有一件的厉害的装备,比如屠龙刀,倚天剑只有一把。懒汉模式class Singleton { public: static Singleton* Instance(); protected: Singleton(){} private: static Si原创 2017-09-22 16:44:45 · 311 阅读 · 0 评论 -
Linux笔试面试题总结
Linux进程间通信方式有那些? 1.管道(pipe)和有名管道(name pipe 如FIFO) 管道只能用于有亲缘关系的进程间通信,如父子进程间通信 而,有名管道可以用于任何进程间通信2.信号(Signal):信号是比较复杂的通信方式,用于通知接受进程有某种事件发生,除了用于进程间通信外,进程还可以发送信号给进程本身;3.消息队列(message) 消息队列是消息的链接表,存储在内核中,原创 2017-10-12 23:11:12 · 588 阅读 · 0 评论 -
字符串匹配KMP算法
字符串匹配,应用主要在文本搜索,DNA序列中搜索特定的序列,搜索引擎查询特定网页地址等。 字符串匹配算法大概有: 1.朴素算法 (如GCC4.8 实现的 strstr 函数) 2.Rabin-Karp 3.有限自动机算法 4.Knuth-Morris-Partt它们的预处理时间和匹配时间如下: 算法 预处理时间 匹配时间 朴素算法 0 O((n−m+1)m)O((n-原创 2017-10-17 12:30:12 · 378 阅读 · 0 评论