华为oj 输出单向链表中倒数第k个结点
来源:互联网 发布:西安西科软件 编辑:程序博客网 时间:2024/05/17 05:53
终于到这道题了,这是俺们那年考研数据结构最后一道题!
思路:设置相距为k的两个指针,当后一个指针指向NULL 时,前面的指针就指向了倒数第K个,程序如下:
#include <iostream>using namespace std;struct ListNode{int m_nKey;ListNode* m_pNext;};int main(){int count, k, num;ListNode* Head = new ListNode();ListNode* p = Head;ListNode* q = NULL;cin >> count;//创建链表for (int i = 0; i<count; i++){cin >> num;q = new ListNode();q->m_nKey = num;p->m_pNext = q;p = p->m_pNext;}cin >> k;p = q = Head->m_pNext;for (int i = 0; i < k; i++){q = q->m_pNext;}while (q->m_pNext != NULL){p = p->m_pNext;q = q->m_pNext;}cout << p->m_nKey<<endl;return 0;}结论:还有找到中间节点的思路,也设置两个指针,一个指针每次++,另一个指针进行两次++!!!
0 0
- 华为OJ:输出单向链表中倒数第k个结点
- 【华为oj】输出单向链表中倒数第k个结点
- 华为oj:输出单向链表中倒数第k个结点
- 华为oj 输出单向链表中倒数第k个结点
- 【华为OJ】输出单向链表中倒数第k个结点
- 华为oj_输出单向链表中倒数第k个结点
- 华为OJ基础篇-输出单向链表中倒数第k个结点
- 华为OJ基础篇-输出单向链表中倒数第k个结点
- 【华为OJ】【035-输出单向链表中倒数第k个结点】
- 华为OJ——输出单向链表中倒数第k个结点
- 华为OJ 初级:输出单向链表中倒数第k个结点
- 华为OJ 初级 输出单向链表中倒数第k个结点
- 华为oj 初级 输出单向链表中倒数第k个结点
- 华为OJ——输出单向链表中倒数第k个结点
- 华为机试在线训练-牛客网(26)输出单向链表中倒数第k个结点
- 输出单向链表中倒数第k个结点
- 输出单向链表中倒数第k个结点
- 输出单向链表中倒数第k个结点
- 在linux上安装pear
- 关于如何高效率开发App
- qt连接mysql
- 前端SEO优化(个人总结)
- JVM:监控resin/tomcat
- 华为oj 输出单向链表中倒数第k个结点
- unzip several files together
- 【bzoj3998】[TJOI2015]弦论 后缀自动机
- java 实例化的时候得执行顺序
- Java中equals(),hashCode(),==的对比使用
- extjs 初始化函数 中的 this.callParent(arguments);类似于继承么?就是继承父类的对应的初始化函数
- 自己整理一个div的jquery弹窗效果
- Qt使用教程之创建Qt Quick UI表单(四)
- 国家基金申报撰写