单向链表和二进制

Posted 程序图

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了单向链表和二进制相关的知识,希望对你有一定的参考价值。

链表由数据(data)和指针(pointer)组成,数据是自己定义的,可以是数字,字符串等等……而指针是由操作系统决定的。2的32次方大概是2g,所以4g内存需要64位的系统。

数组的存放位置肯定是挨着的。

每一个数据和指针就是一个结点(node)。

链表(linklist)包含第一个地址(head)和最后一个地址(tail)     *代表是指针地址,有固定的存储,并不是自己定义的。    可以*lnode是指针指向lnod

如何向表中插入最后一个数据?

首先向申请一块区域,然后插入数据,指针为null,把上一个的指针null改为最后一个的存储位置。最后!把表中的最后一个地址改为最后新的地址。

 

 

二进制转十进制:每一个数乘以他的位权相加。

1101        1*2的0次方+0*2的1次方+1*2的2次方+1*2的3次方=1+0+4+8=13

十进制转二进制:用商对二取余

27         27/2=13……1     13/2=6……1   6/2=3……0   3/2=1……1     1/2=0……1             1101

 双向链表:每一个结点都有两个指针,在插入和删除时需要修改两个方向的指针。                                                                                                                  

以上是关于单向链表和二进制的主要内容,如果未能解决你的问题,请参考以下文章

数据结构和算法--3链表(单向链表双向链表环形单向链表和约瑟夫问题)

单向链表和双向链表简介

单向链表和双向链表的原理及其相关实现

常用数据结构:单向链表和双向链表的实现

JS数据结构第三篇---双向链表和循环链表

java实现单向链表