文档章节

oral_quiz->#求链表中的倒数第K个结点#

貉子
 貉子
发布于 2014/06/01 15:43
字数 81
阅读 46
收藏 0
#include "myfuncs.h"
template <typename ListNode>
ListNode* FindKthToTail(ListNode* pListHead, unsigned int k) {
	if(pListHead == NULL) return NULL;
	Assert(k > 0, "k must larger than zero");

	ListNode *pAhead = pListHead;
	ListNode *pBehind = NULL;

	for(unsigned int i=0; i<k-1; ++i) {
		Assert(pAhead->m_pNext != NULL, "k is longer than the list's length");
		pAhead = pAhead->m_pNext;
	}

	pBehind = pListHead;

	while(pAhead->m_pNext != NULL) {
		pAhead = pAhead->m_pNext;
		pBehind = pBehind->m_pNext;
	}

	return pBehind;
}



© 著作权归作者所有

共有 人打赏支持
貉子
粉丝 9
博文 94
码字总数 33240
作品 0
海淀
程序员
私信 提问
面试题15:链表中倒数第K个结点

题目:输入一个链表,输出该链表中倒数第K个结点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾结点是倒数第1个结点。例如一个链表有6个结点,从头结点开始它们的值依次是1、2、3、...

嗯哼9925
2017/12/21
0
0
编程题——11~20

十一、数值的整数次方 实现函数double Power( double base, int exponent ),求base的exponent。不使用哭函数,同时 不需要考虑大数问题。 十二、打印1到最大的n位数 输入数字n,按顺序打印出...

thanatos_y
2016/07/21
0
0
面试 8:快慢指针法玩转链表算法面试(二)

昨天在最后给大家留了拓展题,不知道大家有没有思考完成,其实南尘说有巨坑是吓大家的啦,实际上也没什么。我们来继续看看昨天这个拓展题。 面试题:给定单链表的头结点,删除单链表的倒数第...

nanchen2251
07/13
0
0
移除单链表的倒数第N个节点

原题   Given a linked list, remove the nth node from the end of list and return its head.   For example, 1 2 3 1 2 3   Note:   Given n will always be valid.   Try to ......

一贱书生
2016/12/13
2
0
C++学习笔记(三)

面试题:替换空格 题目:实现一个函数,把字符串中的每个空格替换成“%20”,例如输入“We are happy.”,则输出“Wr%20are%20happy.”。典型应用:网络编程中,若URL参数含有特殊字符(空格...

初雪之音
2016/01/10
51
0

没有更多内容

加载失败,请刷新页面

加载更多

关于《红楼梦》的读后感优秀范文2000字

关于《红楼梦》的读后感优秀范文2000字: (在写读《红楼梦》有感的路上遇到了博友“五音不全”师兄,使我感到汗颜,于是放弃了87版的电视剧,只读原著《红楼梦》和五音的评红作品,对原著才...

原创小博客
16分钟前
0
0
cookie与session详解

session与cookie是什么? session与cookie属于一种会话控制技术.常用在身份识别,登录验证,数据传输等.举个例子,就像我们去超市买东西结账的时候,我们要拿出我们的会员卡才会获取优惠.这时...

士兵7
18分钟前
0
0
十万个为什么之为什么大家都说dubbo

Dubbo是什么? 使用背景 dubbo为什么这么流行, 为什么大家都这么喜欢用dubbo; 通过了解分布式开发了解到, 为适应访问量暴增,业务拆分后, 子应用部署在多台服务器上,而多台服务器通过可以通过d...

尾生
今天
2
0
Docker搭建代码质量检测平台-SonarQube(中文版)

Sonar是一个用于代码质量管理的开源平台,用于管理源代码的质量,可以从七个维度检测代码质量。通过插件形式,可以支持包括java,C#,C/C++,PL/SQL,Cobol,JavaScrip,Groovy等等二十几种编程语言...

Jacktanger
今天
2
0
Windows / Linux / MacOS 设置代理上网的方法汇总

本文汇总了 Windows / Linux / MacOS 设置代理上网的各种方法,总结如下: 1、设置系统代理(Windows、Linux、MacOS) 2、设置代理插件(Chrome、Chromium、Firefox、Opera、QQ等浏览器) 3、...

sunboy2050
昨天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部