1. 数据结构单链表头插法和尾插法是什么意思?
头插法是新增节点总是插在头部,以带头结点链表为例,链表头指针是Head,新增节点p。
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
数据的逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。
数据的物理结构是数据结构在计算机中的表示(又称映像),它包括数据元素的机内表示和关系的机内表示。
由于具体实现的方法有顺序、链接、索引、散列等多种,所以,一种数据结构可表示成一种或多种存储结构。
2. 数据结构单链表头插法和尾插法是什么意思?
头插法是新增节点总是插在头部,以带头结点链表为例,链表头指针是Head,新增节点p。
数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。
数据的逻辑结构:指反映数据元素之间的逻辑关系的数据结构,其中的逻辑关系是指数据元素之间的前后件关系,而与他们在计算机中的存储位置无关。
数据的物理结构是数据结构在计算机中的表示(又称映像),它包括数据元素的机内表示和关系的机内表示。
由于具体实现的方法有顺序、链接、索引、散列等多种,所以,一种数据结构可表示成一种或多种存储结构。
3. 请教关于尾插法建立单链表的算法
tailing是通过在列表尾部逐个插入新节点来创建列表。与前面的插值一样,每次应用新节点时,都会读入相应的数据元素值。不同之处在于,为了将新节点插入表的尾部,需要添加尾部指针r来指向链表的尾部。
[算法步骤]
创建一个只有头节点的空链表。
②尾部指针R的初始化,指向头部节点。
③根据链表创建中包含的元素n的个数,进行n个循环的以下操作:
生成新节点*p;
●将输入元素值赋给新节点*p的数据字段;
●在尾节点*R后插入新节点*P;
●尾部指针R指向新尾部节点*PS
如图所示,线性表(A、B、C、D、E)后插值的创建过程与线性表相同。
【算法描述】
void Createlist_R(Linklist &L, int n) //正位序输入n个元素的值,建立带表头结点的单链表L个人
{
L=new LNode; //先建立一个带头结点的空链表L->next=NULL; //尾指针指向头结点r=L;
for(i=0;i<n:++i) //生成新
{
p=newLNode; //输入元素值赋给新结点p的数据域cin>>p->data; //将新*p插入尾结点*r之后p->next=NULL;r->next=p;
r=p; //r指向新的尾结点*p
}
}
算法时间复杂度为O(n)。
扩展资料:
尾部插入方法从空表开始,重复读取数据,生成新节点,将读取的数据存储在新节点的数据字段中,然后将新节点插入到当前链表的尾部,直到读取标记结束。从空表开始,重复读取数据,生成新节点,将读取的数据存储在新节点的数据字段中,然后将新节点插入到当前链表的末尾,直到读取标志结束。
参考资料来源:
百度百科-尾插法