用双链表从尾端查找数据为什么会超时?
来源:互联网 发布:淘宝 小电影 编辑:程序博客网 时间:2024/06/15 04:56
我在做算法作业的时候,写出来一个程序,提交对答案之后,只是部分,有一部分测试程序发现超时,不知为何,也不知道如何解决,请大牛告诉原因以及解决方法!
以下为我写的代码:
#include<iostream>using namespace std;class node{public: int data; node *previous; node *next;};class list{private: node *last; node *temp;public: list():last(NULL),temp(NULL){} node *create_list(); node *print_data(); int getLength();};node *list::create_list(){ node *p = new node; p->previous = NULL; int x = 0; while(x >= 0) { temp = new node; cin>>x; p->data = x; p->next = temp; temp->previous = p; p = temp; temp = NULL; delete temp; } last = p; p->next = NULL; return last;}int list::getLength(){ node *p = last->previous; int i = -1; while(p != NULL) { p = p->previous; i++; } return i;}node *list::print_data(){ int i; int n = -1; cin>>i; create_list(); node *p = last; if(i<=0 || i>getLength()) { cout<<"NULL"<<endl; return NULL; } while(i != n) { p = p->previous; n++; } cout<<p->data<<endl; return last;}int main(){ list l1; l1.print_data(); return 0;}望大牛们不吝赐教。
阅读全文
0 0
- 用双链表从尾端查找数据为什么会超时?
- 为什么Oracle有时会用索引来查找数据?
- 为什么Oracle有时会用索引来查找数据?--强制Oracle使用最优的“执行计划”
- 为什么Oracle有时会用索引来查找数据?--强制Oracle使用最优的“执行计划”
- 为什么MongoDB会丢数据
- memcache为什么会丢数据
- AOJ 559 消失的数字 不知道为什么会超时。。
- 大尾端小尾端
- 大尾端小尾端
- 大尾端小尾端
- 从海量数据中查找数据
- Java从何而来 为什么会如此火暴?
- 从源码角度分析,为什么会发生Fragment重叠?
- poj1002会超时
- 从socket中读取数据时使用超时
- 从socket中读取数据时使用超时
- 登录超时 为什么?
- 向一个table 插入数据的时候,为什么会从该table所分配的第四个block开始,预留的3个block是干什么用的?
- 运算符
- 三、JS【JavaScript弱类型的脚本语言】01
- CodeVS1519 过路费【Kruskal+倍增求LCA】
- 分类和逻辑回归(Classification and logistic regression)
- 数据库选择合适的数据类型
- 用双链表从尾端查找数据为什么会超时?
- 使用Hadoop和Spark实现二次排序
- HDU
- java消费者生产者问题
- 吴恩达mooc神经网络与深度学习
- 常用的一些git指令
- Python——在循环外使用else
- Python3 File(文件) 方法
- 在ArcGIS Online中创建三维图层和网络场景(2017.9)