数据结构tips

2008-1-22

1 链表
Insert 注意 插入0位置要特殊处理
指针指向插入位置的前一个。
Remove 注意 0位置和最后一个位置要特殊处理
两个指针,一个指向插入位置前一个,一个指向插入位置前两个

运用:
箱子排序:
int a[10] = {2,6,7,5,6,6,7,8,9,3};
0
1
2 元素0
3 元素9
4
5
6 元素1,元素4,元素5...
*****************************************************
 2008-1-23

循环链表,基本上和链表相似,
1 少了尾节点的判断。
2 Remove的时候,0位置的判断。

运用:
Josephy 问题概述: 假设有N个人坐在圆桌周围,从第S个人开始报数,报到M的出列,然后再从下一个人开始数报

思路:
seq = S-1+M-1
循环 seq += M-1
特别的 seq = seq%size,seq累加以前删掉的,否则要出错。
****************************************************
2008-1-24
双向链表,没有找到好的运用例子,

要特别注意pos=0 和 pos>length的情况。
貌似可以把pos=0 和 pos>length合并起来,只是要注意判断指针是否为0就可以了。
但是,那样的话,判断条件又太多了,分开了其实也好。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值