Hyacinth_Dy

学习分享

死锁的四个必要条件

死锁产生的四个必要条件 互斥条件:资源是独占的且排他使用,进程互斥使用资源,即任意时刻一个资源只能给一个进程使用,其他进程若申请一个资源,而该资源被另一进程占有时,则申请者等待直到资源被占有者释放。 不可剥夺条件:进程所获得的资源在未使用完毕之前,不被其他进程强行剥夺,而只能由获得该资源的进程资源...

2017-04-11 19:54:03

阅读数 47683

评论数 0

消息队列实现从一个进程向另一个进程发送一个数据块的方法

首先是Comm.h的代码 #include<stdio.h> #include<string.h> #include<sys/types.h&...

2019-03-13 19:05:14

阅读数 54

评论数 0

哈希(HASH)冲突的处理方法

通过构造良好的哈希函数可以减少冲突,但一般不能完全避免冲突。因此解决冲突是哈希法的另一个关键问题。

2017-08-30 19:24:25

阅读数 516

评论数 0

求先递增在递减数组中的最大值

题目:一个数组先从小到大递增在从大到小递减,找出数组的最大值。

2017-08-30 15:00:15

阅读数 928

评论数 0

动态规划之回文最小分割数

给定一个字符串str把str全部切成回文子串的最小分割数。

2017-08-29 21:22:05

阅读数 1301

评论数 0

字符串中找连续最长的数字串

字符串中找连续最长的数字串

2017-08-28 13:45:26

阅读数 269

评论数 0

2017滴滴秋招笔试编程题-求连续子数组的最大和

题目:输入一个整型数组,数组里有正数也有负数,数组中的一个或者连续多个整数组成一个子数组,求所有子数组的和的最大值,要求时间复杂度为O(n)。 例如:输入的数组为{1,-2,3,10,-4,7,2,-5},和最大的子数组为{3,10,-4,7,2},输出连续子数组的最大和是8。 思路分析:我们可...

2017-08-27 18:48:21

阅读数 2782

评论数 0

图-迪杰斯特拉(dijkstra)算法

迪杰斯特拉算法:是一种典型的最短路径算法,用于计算一个结点到其他结点的最短路径,主要特点是以起始点为中心向外层层扩展(广度优先思想),直到扩展到终点。 算法思想:找到离源点最近的一个点,找到以该点为中心,找到源点到其他节点的最短路径。 举例详细分析 采用邻接矩阵存储图,顶点之间不可达记为...

2017-08-08 23:53:13

阅读数 252

评论数 0

大数据面试总结

1、给出一个超过100G的log file,log中存着ip地址,设计算法找到出现次数最多的ip地址? 采用哈希切割将IP相同的文件都映射到同一个文件中,在一次统计每个文件ip的个数,求出最多的,如果一个ip出现的次数特别多,切割之后还是无法加载到内存中,我们可在对这个文件进行切割(普通切割)分...

2017-08-08 23:30:36

阅读数 502

评论数 0

STL-list容器使用

list结点的定义

2017-08-08 20:36:19

阅读数 183

评论数 0

布隆过滤器

布隆过滤器 他实际上是一个很长的二进制向量和一系列随机映射函数,用于检索一个元素是否在一个集合中,当一个元素被加入到集合中,通过K个hash函数将元素映射到位队列的K个点中,即将对应的比特位置为1,检索时我们只需要知道这些点是不是1就能大约知道这个元素是不是再集合中。如果这些点中任何一个为0,就...

2017-08-07 22:15:48

阅读数 323

评论数 2

位图

位图实现:在位图中采用比特位表示对应的元素存在或者不存在0:不存在 1:存在,例如一个int整数有32个比特位可以表示0-31个整数。 实现代码 class BitMap { public: BitMap(int size = 100)//size表示你需要表示元素的个数 { ...

2017-08-07 21:49:41

阅读数 1309

评论数 0

熟悉STL顺序容器的使用之vector

vector相关操作

2017-08-06 22:20:31

阅读数 191

评论数 0

寻找无序数组的中位数

题目:求一个无序数组的中位数。 如:{2,5,4,9,3,6,8,7,1}的中位数为5,{2,5,4,9,3,6,8,7,1,0}的中位数为4和5。 要求:不能使用排序,时间复杂度尽可能高 提示:考虑堆或者快排思想解决。

2017-08-06 22:13:40

阅读数 363

评论数 0

CVTE水果问题

题目:本公司现在要给公司员工发波福利,在员工工作时间会提供大量的水果供员工补充营养。由于水果种类比较多,但是却又不知道哪种水果比较受欢迎,然后公司就让每个员工报告了自己最爱吃的k种水果,并且告知已经将所有员工喜欢吃的水果存储于一个数组中。然后让我们统计出所有水果出现的次数,并且求出大家最喜欢吃的前...

2017-08-06 21:30:51

阅读数 208

评论数 0

Linux小项目-群聊系统

项目名称:chat_room群聊系统 背景知识与主要技术: 熟悉Linux基本指令的使用(ls,cd,make,mkdir,top,basename,pwd,cp,mv,rm,touch) 熟悉linux开发环境,熟练使用vi/vim ,gcc/g++,gdb,make,makefile 了...

2017-08-02 22:27:23

阅读数 3220

评论数 3

shell脚本实现希尔(shell)排序

采用shell脚本实现希尔排序

2017-07-31 19:28:22

阅读数 475

评论数 0

希尔/shell排序

题目:采用希尔排序对一组无序元素由小到大排序 实现代码 void ShellSort(int *arr, int size)//希尔排序 { if (NULL == arr || size <= 0) return; int gap = size; ...

2017-07-31 19:22:49

阅读数 237

评论数 0

面试题:插入排序

采用插入排序对一组无序元素进行排序

2017-07-31 19:20:44

阅读数 232

评论数 0

面试题-前序中序序列重建二叉树

题目:根据某二叉树的前序中序序列重建二叉树,假设前序中序序列中不包含重复的数字。树的结点定义如下。

2017-07-30 23:06:02

阅读数 216

评论数 0

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