- 博客(13)
- 收藏
- 关注
原创 概念题整理
11、linux/unix远程登陆都用到了ssh服务,当网络出现错误时服务会中断,linux/unix端的程序会停止。为什么会这样?说下ssh的原理,解释中断的原理。答案一:可以ssh到服务器上,然后pstree一下。 ssh会启动一个bash,然后在bash中,所有程序都是bash fork()然后exec()出来的,也就是说父进程都是这个bash,如果ssh断了,ssh会向所
2015-06-02 10:41:07
382
原创 10.百度最新面试题:现在有1千万个随机数,随机数的范围在1到1亿之间。现在要求写出一种算法,将1到1亿之间没有在随机数中的数求出来。
10.百度最新面试题:现在有1千万个随机数,随机数的范围在1到1亿之间。现在要求写出一种算法,将1到1亿之间没有在随机数中的数求出来。(编程珠玑上有此类似的一题,如果有足够的内存的话可以用位图法,即开一个1亿位的bitset,内存为100m/8== 12.5m, 然后如果一个数有出现,对应的bitset上标记为1,最后统计bitset上为0的即可。)转 http://blog.cs
2015-06-02 10:20:52
2618
转载 一个数组保存了N个结构
一个数组保存了N个结构,每个结构保存了一个坐标,结构间的坐标都不相同,请问如何找到指定坐标的结构(除了遍历整个数组,是否有更好的办法)?(要么预先排序,二分查找。要么哈希。hash的话,坐标(x,y)你可以当做一个2位数,写一个哈希函数,把(x,y)直接转成“(x,y)”作为key,默认用string比较。或如Edward Lee所说,将坐标(x, y)作为 Hash 中的 key。例如(
2015-06-01 20:28:09
522
转载 插一道华为的题目,华为就爱这种题
去除重复字符并排序运行时间限制:无限制内容限制: 无限制输入: 字符串输出: 去除重复字符并排序的字符串样例输入: aabcdefff样例输出: abcdef#include#include#include#includeusing namespace std;v
2015-06-01 16:24:13
451
转载 8.去掉const属性
去掉const属性,例: const double value = 0.0f; double* ptr = NULL;怎么才能让ptr指向value? 强制类型转换,去掉const属性,如ptr = (&value);点击打开链接
2015-05-30 22:11:04
2526
原创 7.const指针问题
double* ptr = &value; //ptr是一个指向double类型的指针,ptr的值可以改变,ptr所指向的value的值也可以改变 const double* ptr = &value //ptr是一个指向const double类型的指针,ptr的值可以改变,ptr所指向的value的值不可以改变double* const ptr=&value
2015-05-30 21:56:22
376
转载 6.任务依赖问题(转载)
(1)不考虑系统并行性,设计一个函数(Task *Ptask,int Task_num)不考虑并行度,最快的方法完成所有任务。 (2)考虑并行度,怎么设计 typedef struct{ int ID; int * child; int chi
2015-05-30 21:55:10
571
转载 5.在一维坐标轴上有n个区间段,求重合区间最长的两个区间段。
这种题目见过一些类似的题目。这里整理一下思路。一位很牛逼的网友写的,点击打开链接。用的是分治法,类似于归并排序。还有一种动态规划的方法,点击打开链接,思路如下:假设S[n]表示n条线段中最长重叠距离,最长重叠距离只与两条线段有关,那么考虑两种情况:1. 最长重叠距离与第n条线段无关,则最长重叠距离存在于前n-1条线段中,即S[n]=S[n-1];2. 最长重叠距离与第n条线
2015-05-29 10:06:52
1006
原创 4.给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数。 要求:空间复杂度O(1),时间复杂度为O(n)
//给定一个存放整数的数组,重新排列数组使得数组左边为奇数,右边为偶数。//要求:空间复杂度O(1),时间复杂度为O(n)#include#includeusing namespace std;void reform(int (&arr)[6]){ int size=sizeof(arr)/sizeof(int); int left=0,right=size-1; whil
2015-05-28 17:54:44
2847
1
原创 3.蚂蚁问题
有一根27厘米的细木杆,在第3厘米、7厘米、11厘米、17厘米、23厘米这五个位置上各有一只蚂蚁。木杆很细,不能同时通过一只蚂蚁。开始时,蚂蚁的头朝左还是朝右是任意的,它们只会朝前走或调头,但不会后退。当任意两只蚂蚁碰头时,两只蚂蚁会同时调头朝反方向走。假设蚂蚁们每秒钟可以走一厘米的距离。编写程序,求所有蚂蚁都离开木杆的最小时间和最大时间。思路,最短时间显然是蚂蚁都不碰头,
2015-05-28 15:45:26
695
原创 2.C语言实现函数void *memmove(void *dest, const void *src, size_t n)。memmove 函数的功能是拷贝src所指的内存内容前n个字节到dest所指
//用C语言实现函数void * memmove(void *dest, const void *src, size_t n)。memmove//函数的功能是拷贝src所指的内存内容前n个字节到dest所指的地址上。//分析:由于可以把任何类型的指针赋给void类型的指针,这个函数主要是实现各种数据类型的拷贝。//要考虑正向拷贝和反向拷贝问题#include#includev
2015-05-28 15:41:20
617
原创 1.百度150道题,今天开刷。1.用C语言实现一个revert函数,它的功能是将输入的字符串在原串上倒序后返回。
#include "stdio.h"#include #include char * revert(char *str){ int len = strlen(str); int i = 0; char temp; while(i < len/2) //这里注意,不能取等号 { temp = str[len-1-i]; str[len-1-i] =str [i];
2015-05-28 15:06:27
683
原创 快排
#include using namespace std;void quick_sort(int array[],int length);void _quick_sort(int array[],int start,int end);int get_middle(int array[],int start,int end);void quick_sort(int array[],int lengt
2015-03-13 12:09:34
588
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人