99问答网
所有问题
当前搜索:
设一个链栈的栈顶指针是ls
链栈
中为什么需要头结点
答:
链栈
中需要头结点原因:因为栈是后进先出的数据结构,我们不可能直接就对栈底元素进行操作,要想操作栈底元素,必须得先依次让非栈底元素出栈。即使设了头
指针
,也没有用处,对
栈顶
元素的操作,与头指针没关系。所以不必设头指针指向栈底元素。1、头结点不存储数据,此时它只是个标记。链表从这里开始...
从
一个栈顶指针为
top的
链栈
中删除一个结点时
答:
从
一个栈顶指针为
top的
链栈
中删除一个结点时,应该先保存一个原先Top所指的值,然后令原有的Top=Top的next。最后回收原先保存指针的节点。
设计
一个栈
类 实现初始化栈、入栈、出栈、判栈空
答:
include "stdio.h"#include "malloc.h"#include "stdlib.h"//节点struct Node{int date;//数据struct Node* pNext;//用于指向上一个元素的地址};//
栈
struct Strack{struct Node* save;//保存最上面一个元素的地址struct Node* pTop;//顶部
指针
struct Node* pBottom;//底部指针void initStrack(...
从
一个栈顶指针为
hs的
链栈
中删除
答:
不明白为什么选D,是不是弄错了 HS是
一个指针
,但是在D中却把一个数赋值给了HS,HS = HS->data;那HS就不再指向该链表了,指向了内存地址为data的地方.程序跑飞了 应该是这样的啊 x=HS->data;HS=HS->next;
链栈
入栈 数据结构 请问一下为什么运行不了
答:
DataType x){ /*入栈函数*/ LinkStack *p; p = (LinkStack *)malloc(sizeof(LinkStack));/*动态分配一个结点空间*//*生成新结点*/ p->data = x; /*将x放入新结点的数据域*/ p->next = S->next;/*新结点作为
栈顶
*/ S->next = p; /*将新结点插入链表表头之前...
链栈
中为何不设头
指针
?
答:
因为栈是后进先出的数据结构,我们不可能直接就对栈底元素进行操作,要想操作栈底元素,必须得先依次让非栈底元素出栈;即使设了头
指针
,也没有用处,对
栈顶
元素的操作,与头指针没关系。所以不必设头指针指向栈底元素。
数据结构中
链栈
出栈问题,为什么要
设置一个
变量去保留所出
栈顶
元素的数 ...
答:
出栈后,那个结点就被删除了,这个数据就访问不到,保留数据才能使用这个出
栈的
数据
向
一个栈顶指针为
top的
链栈
中插入一个x结点,则执行
答:
原题意思:你的意思:
链栈
操作:为什么我修改子函数top
指针
主函数top指针不变?(程序还未写完...
答:
因为传递进函数的指针只是传递了指针值,好在函数的返回值就是该过的指针值,所以调用时的格式为(
设栈顶指针为
top):top = pop(top);或者 top = push(top, x);就可以了
请问,
链栈
和顺序
栈的
应用区别在于?它们分别用来解决那些问题?
答:
顺序栈:实现需要使用数组,数组的元素在内存中的存储位置是连续的;且需要知道数组的长度才可以使用;无法避免溢出问题;当系统给数组分配了内存空间,其他的任务是不能使用这个内存空间的;存储密度=1;顺序
栈的
top
指针
指向的
是栈顶
的空元素处,top-
1才是
指向栈顶元素;不易实现插入和删除操作。
链栈
:...
棣栭〉
<涓婁竴椤
4
5
6
7
9
10
8
11
12
13
涓嬩竴椤
灏鹃〉
其他人还搜