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

c++中list链表如何实现输出指定位置的值

发布网友 发布时间:2022-04-22 15:40

我来回答

5个回答

热心网友 时间:2023-11-11 03:02

你好,list 底层是一个链表, 是用指针实现的,所以不能向数组那样直接得到,你可以自己写一个来遍历, 如;

template<typename T>
T get_value(list<T> ls, int index) {
  typename list<T>::iterator iter;
  iter = ls.begin();
  for(int i = 0; i < index; ++i) {
    iter++;
  }
  return *iter;
}

热心网友 时间:2023-11-11 03:02

对于 list<int > lhead;

如果你说的是c++里面的库函数list,是没有这样的成员函数的。

2.如果你说的广义的list,一般情况也是没有的。

3.首先你得知道,得到一个list,你只能知道它的头/尾指针,list长度等。因为它在内存中一般不是顺序存取的,所以没法用类似lhead[3]的方法来获取第三个元素。


解决的办法是写一个遍历函数,获取他的第三个元素,形如:

//库函数

int getNum(int num){

    list<int > temp =lhead;

auto iter = temp.begin();

    for(int i=0;i<num;++i){

        if(iter!=temp.end())

                ++iter;

}

return *iter;

}

//自定义函数

public int getNum(int num){

    list<int > temp =lhead;

    for(int i=0;i<num;++i){

        if(temp -> next !=NULL) 

            temp = temp->next;

    }

    return temp->value;

}

4.一般不赞成用list来做这样的操作,因为list获取一个元素时间复杂度O(n),Array获取只需要用下标 array[3]就行了,时间复杂度为O(1)。

追问array是什么

追答array就是数组,一般数组都提供了下标操作。

热心网友 时间:2023-11-11 03:02

可以写个函数吧,参数就为int型下标值,然后遍历链表。

热心网友 时间:2023-11-11 03:03

在元素结构中定义一个记录下标的变量就可以了。

热心网友 时间:2023-11-11 03:04

重载下标访问运算符,
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
...每次文字比较多超出屏幕大小就不知道怎么截屏,求教大佬! 我国政策性 广西明士清医疗器械有限公司怎么样? 广西禾力药业有限公司怎么样? 广西龙母圣商贸有限公司怎么样? 安徽合肥有什么去痔的好地方 我女朋友的谷丙转氨酶过高(达到121),而且两对半检测为阴性,是肝功能有... 泸州丽人女子医院开展科室 自由之子本次世界杯是否将在小组赛中被菜? 世界杯谁会嬴 巾帼不让须眉的女英雄有哪些? 中国女英雄有几个,她们分别是做什么的? 输出带头结点的单链表中元素的最大值(最小值) 请问外国的女英雄有谁?(不要现代的) 将长度为n的单链表链接在长度为m的单链表之后的算法的时间复杂度为 除了花木兰,你还知道其他女英雄的事迹吗? 生成是什么意思 关于女英雄的故事 PS如何创建任意形状的画布,求高手指点 外国女英雄的故事节选 中国历史上十大女英雄有哪些?? C语言插入链表 将一个链表按逆序排列,即将链头当链尾,链尾当链头 古代巾帼女英雄的事迹和传说 如何查看C语言错误在哪里? 中国古代有哪些女英雄? 怎么修改下面程序使得在链尾插入一个节点 历史上的女英雄的故事 设计一个程序把一个链表的链头变成链尾,链尾变成链头 当代有哪些女英雄即事迹 拍了什么意思 延迟摄影后播放速度太快怎么正常播放? 怎么连接火车无线网密封 火车上的无线网怎么连接 谢谢 要下什么软件才能用火车wifi? 怎么连火车站的免费WiFi 火车上怎么连接wifi? 怎样使用火车上的免费WiFi,箩筐 火车wifi怎么连 苹果手机怎么连接火车无线网? 怎么连火车上的免费wifi 2. 火车上的搜到的无线wifi怎么连啊 火车站免费wifi怎么连接 苹果手机怎么连接火车无线网 怎么都进不了电脑的安全模式 电脑开机按f8进不了安全模式怎么办 电脑安全模式进不了怎么办 将一个链表按逆序排列,即将链头当链尾,链尾当链头 电脑 进不了安全模式。什么原因?如何解决? 我的电脑怎么解不了安全模式啊!