问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

C语言 单链表 查找一个元素出现的所有位置

发布网友 发布时间:2022-05-26 02:26

我来回答

2个回答

热心网友 时间:2022-07-08 14:50

int get1(linklist *head,int ch,int *a)
{
linklist *p=head;
int i=0,j=0;
while(p!=NULL)
{
if(p->data==ch)
{
a[j++]=i;
a=(int*)relloc(a,(j+1)*sizeof(int));
}
i++;
p=p->next;
}
return j;
}
这个函数,返回值是找到的位置的个数,数组a存放的位置的索引。
调用的时候:
int *a;
linklist *head;
//链表初始化
char ch;
//ch初始化
int n=get1(head,ch,a);
if(n!=0)
{
printf("找到了,在");
for(int i=0;i<n;i++)
printf("%2d",a[i]);
printf("位置\n");
}
else
printf("没有找到\n");

热心网友 时间:2022-07-08 16:08

链表的一个优势在于动态的插入和删除节点,插入和删除操作如果有index实现起来很方便,
头疼的是实际工程中没有index,需要遍历链表去搜索并匹配要操作的节点的位置,然后才是对节点的操作,
单链表是无法绕开这个问题的,但是多链表可以不用知道节点位置。
多链表的前节点地址和后节点地址配合,可以完成节点的删除,
p->next->pre = p->pre;
p->pre->next = p->next;
只要你知道节点的信息,多链表就可以满足所有操作要求。
链表的优点就是不用查找,因为链表是动态的,你找这个的时候,说不定前面的节点被删掉了,你找的位置就不准了。查找,就不如用数组了。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
联想E盘不见了怎么办? 电脑e盘不见了怎么恢复?6个步骤找回e盘 五一去河源万绿湖游玩,需要携带哪些物品? 五一假期,旅行必带的物品是什么 建行办新卡用了新手机号,旧卡就自动绑了信号 请问电磁炉热敏电阻阻值是多少 电磁炉换电阻多少钱 电磁炉配件电阻多少钱 电磁炉510K大电阻多少钱一个 更换电磁炉电阻多少钱 list找出一个元素的位置(重复元素怎么分别找出位 python list 怎么查出一个元素的所有位置 c++中怎么确定list 容器里的元素的位置 求高手解答 在线等答案_百度知 ... 怎么在元素周期表中速度的找的我想要的元素的位置 为什么网页版微信,没有显示表情??? 网页版微信为什么收不到表情 怎么查找列表中元素所在的位置(如果差找不到不报异常) Python3.6_百度... 在电脑上怎么注册 有专家帮宝宝取个好名字吗?姓武,男,出生于2011年阳历6月29日 下午2:0... 戊戌年 己未月 壬子日 丁未时今年生的男宝宝,姓武,取什么名字比较好 我老婆快生了,希望大家帮忙帮宝宝取个名字。我姓武,谢谢。 为什么安卓高通的老是闪退 android在运行时为什么会闪退?求大神指教 取名 女孩 姓毛 2010年11月4日13点55分 最好最后一个字是轩 帮小孩取名,女孩子,秋什么语,中间的字有什么推荐的 父姓江 母亲姓王 女孩 江瑶 江琪 江语欢 江昕语 江语琪 江乐琪... 一个手机号码注册了两个之前那个微信怎么找回来? 一个手机号码注册了两个之前那个微信怎么找回来? 一个手机号码注册了两个之前那个微信怎么找回来? 一个手机号不小心注册了另一个,怎么找回旧的微信? ...进来要欢太账号激活密码,但是我忘了,手机号码早已不用怎么办?_百度... ...但是我忘记密码了,想问下怎样才能联系到欢太客服? 亲,receptor tyrosine kinase signaling是什么意思 fgfr3基因是什么 郑新民的发表文章 amp-activated protein kinase是什么意思 谁有关于促分裂素原活化蛋白激酶(mitogen-activated protein... 手机屏幕颜色26万色、1670万色差别大吗? 手机1600万色和1670万色的区别!!! 1670色的手机屏幕是个什么概念? 1670万色是多少srgb 求高手帮我申请个App Store Connect 账号 非常感谢 苹果商店中,app信息中itunes connect的语言怎么修改 6万色,26万色,1600万色,1670万色的手机屏幕有什么区别吗? iPhone提示Cannot Connect to iTunes Store怎么办 1670万像素的屏幕和26万色的屏幕怎么区别? 开发app必须要有itunes connect吗 屏幕6.53英寸,1670万色,该屏幕的色深是多少比特? 手机的分辨率、屏幕大小、色彩多少有什么关系? 1670W色和26W色的区别大吗,到底区别在哪,1670W色又是什么意思