由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
JobHunting版 - 面试数据结构一题
相关主题
c++里面deque是用什么数据结构实现的?请教:C# or .Net Developer interview 会不会涉及算法和数据结构方面的问题?
这个题怎么答?问问通常所说的字典dictionary都是用什么数据结构表示的?
问一个数据结构的问题一道设计数据结构题目
题:如何拷贝一个数据结构有没有复习或者学习算法和数据结构速成的书?
2道设计题: 实现linkedin自动推荐/MS word数据结构如何设计一个支持 survey or questionnaire 的数据结构? (转载)
弱问个数据结构的问题非科班学习算法+数据结构的教程?
请教一下大家学习数据结构和算法的经验请教
求数据结构面试复习总结...求推荐一本数据结构你认为最经典的书。
相关话题的讨论汇总
话题: process话题: 系统话题: 调用话题: 数据结构
进入JobHunting版参与讨论
1 (共1页)
d****o
发帖数: 1055
1
构造数据结构,实现两个function
int getProcessID()
void freeProcessID(int id)
要求,如果getProcessID 调用6次,那么系统里面会有6个process在运行,(id 从 1到
6)如果,freeprocessid(x)调用,系统里面对应得process x会被释放。
但是,如果再一次调用getProcessID(), 会返回最小的之前被释放得processID.
举例:调用顺序:
getProcessID()
getProcessID()
getProcessID()
getProcessID()
getProcessID()
getProcessID()//系统里面会有6个process
free(5)//系统process 1,2,3,4,6
free(3)//系统process 1,2,4,6
free(6) //系统process 1,2,4
getProcessID() //系统process 1,2,3,4
getProcessID() //系统process 1,2,3,4,5
请问用什么数据结构实现,使得这两个function的运行时间都为O(1)?
C***U
发帖数: 2406
2
heap吧
用来保存释放掉的id

【在 d****o 的大作中提到】
: 构造数据结构,实现两个function
: int getProcessID()
: void freeProcessID(int id)
: 要求,如果getProcessID 调用6次,那么系统里面会有6个process在运行,(id 从 1到
: 6)如果,freeprocessid(x)调用,系统里面对应得process x会被释放。
: 但是,如果再一次调用getProcessID(), 会返回最小的之前被释放得processID.
: 举例:调用顺序:
: getProcessID()
: getProcessID()
: getProcessID()

i******e
发帖数: 273
3
用两个deque, 一个存放当前最大的pid, 一个存放最小连续pid中最大的一个,就能实
现O(1)操作。
A**u
发帖数: 2458
4
都是O(1)操作,好像比较拿实现。
先不说getProcessID,
就 说free过程,至多是O(lgN)吧

【在 d****o 的大作中提到】
: 构造数据结构,实现两个function
: int getProcessID()
: void freeProcessID(int id)
: 要求,如果getProcessID 调用6次,那么系统里面会有6个process在运行,(id 从 1到
: 6)如果,freeprocessid(x)调用,系统里面对应得process x会被释放。
: 但是,如果再一次调用getProcessID(), 会返回最小的之前被释放得processID.
: 举例:调用顺序:
: getProcessID()
: getProcessID()
: getProcessID()

d****o
发帖数: 1055
5
这个不行,我就说用这个,但是当getprocessid之后,你还需要整理堆,是log(n)。

【在 C***U 的大作中提到】
: heap吧
: 用来保存释放掉的id

d****o
发帖数: 1055
6
没看懂,能不能展开说说。

【在 i******e 的大作中提到】
: 用两个deque, 一个存放当前最大的pid, 一个存放最小连续pid中最大的一个,就能实
: 现O(1)操作。

C***U
发帖数: 2406
7
没看见要o(1). 不好意思

这个不行,我就说用这个,但是当getprocessid之后,你还需要整理堆,是log(n)。
★ Sent from iPhone App: iReader Mitbbs 7.56 - iPad Lite

【在 d****o 的大作中提到】
: 这个不行,我就说用这个,但是当getprocessid之后,你还需要整理堆,是log(n)。
1 (共1页)
进入JobHunting版参与讨论
相关主题
求推荐一本数据结构你认为最经典的书。2道设计题: 实现linkedin自动推荐/MS word数据结构
求推荐数据结构的书弱问个数据结构的问题
BB家电面请教一下大家
请教一个C/C++问题求数据结构面试复习总结...
c++里面deque是用什么数据结构实现的?请教:C# or .Net Developer interview 会不会涉及算法和数据结构方面的问题?
这个题怎么答?问问通常所说的字典dictionary都是用什么数据结构表示的?
问一个数据结构的问题一道设计数据结构题目
题:如何拷贝一个数据结构有没有复习或者学习算法和数据结构速成的书?
相关话题的讨论汇总
话题: process话题: 系统话题: 调用话题: 数据结构