【数据结构与算法】:倒数第K个数
2016-07-24 21:57
197 查看
这个题很简单,倒数第K个数,先顺序遍历一边,找出链表中一共有多少个数(假设为Num个),然后再次遍历,其中第num-k个数就是要找的
两函数如下:
非常的简单,一下子就能够明白了
在这里我要给一个彩蛋,我这里给出一种方法2,方法2是用两个链表,保持K个距离即可
两函数如下:
int GetLength(struct node *head){ int count = 0; struct node *temp = head; while(temp!=NULL){ count++; temp = temp->next; } return count; } int getReverseK(struct node *head,int k){ struct node *temp = head; int num = GetLength(head); for(int i=0;i<num-k;i++){ temp = temp->next; } cout<<"倒数第K个数是"<<temp->data<<endl; return 0; }
非常的简单,一下子就能够明白了
在这里我要给一个彩蛋,我这里给出一种方法2,方法2是用两个链表,保持K个距离即可
void getReverseKonlyOnce(struct node *head,int k){ struct node *temp1 = head; struct node *temp2 = head; for(int i=0;i<k;i++){ temp1 = temp1->next; } while(temp1!=NULL){ temp1 = temp1->next; temp2 = temp2->next; } cout<<"倒数第K个数是"<<temp2->data; }
相关文章推荐
- (模板题)sdut 3403 数据结构实验之排序六:希尔排序(希尔排序)
- (模板题)sdut 3402 数据结构实验之排序五:归并求逆序数(归并排序)
- 大话数据结构 -- 第八章 查找
- 并查集详解
- MySQL索引背后的数据结构及算法原理
- 数据结构学习笔记6——队列
- 《大话数据结构》读书笔记
- HDU1251统计难题 trie树
- 数据结构——不相交集(并查集)
- 线性数据结构与节点数据结构增、删、查、修改 优劣介绍
- HashMap与ConCurrentHashMap
- 排序_2.快速排序
- (模板题)sdut 3374 数据结构实验之查找二:平衡二叉树(平衡二叉树的建立)
- SDUT 2141 数据结构实验图论一:基于邻接矩阵的广度优先搜索遍历
- (模板题)sdut 3373 数据结构实验之查找一:二叉排序树(二叉排序树的建立)
- 数据结构(java)---MyLinkedList
- [从头学数学] 第245节 Python实现数据结构:排序
- 数据结构之排序
- [从头学数学] 第244节 Python实现数据结构:列表
- 二分查找