定义一个数组,包含最多50个数据,超过50个数据 保持插入的次序

定义一个数组,包含最多50个数据,超过50个数据,每增加一个数据,就把最早的那个删除,还要保持插入的次序

http://www.cnblogs.com/ywb-lv/archive/2012/01/30/2331549.html

加一个标记位就好,标记起始位置在哪。
一开始标记位head = 0,假设已经插入了50个数据,准备插入第51个数据时,在head处插入数据,然后head = head + 1。注意运用模运算。

用带尾结点的循环链表写,size>50的时候,删除尾结点后一个结点(第一个数据),然后插入。时间空间复杂度都OK

数组,可以再指定位置插入元素,也可以删除指定的元素。
也可以用有序集合实现,然后转为数组。

。。。如果只是单纯用数组的话,没有其他要求,我猜楼主可能正在学习基础,那么直接用数组存储数据就好了,没必要用之后高级的东西进行转化。
数组本身就是有序的,会自动按照插入顺序排列。
在基础学习阶段比较常用的方法是:初始数组为空,每加入一个,数组长度增1并存储加入的数据;判断是否超过50,如果是,将下标为0的与1交换、1的与2交换,循环至50与51的交换,并且缩容1位即可

其实这就是一个固定了长度,先进先出的队列。如果题主用的是JAVA 可以考虑一下看这篇文章: http://blog.sina.com.cn/s/blog_566fd08d0101fwcr.html