# Chapter 2 | Linked Lists--返回单链表倒数第n个元素及删除中间的某个节点

2.2    Implement an algorithm to find the nth to last element of a singly linked list.

LINK_NODE *Node = NULL;
int n;
{
return;

--n;
if (0 == n)
}

LINK_NODE* findNthToLast(LINK_NODE *pHead, int n)
{
if ((NULL == pHead) || (n < 1))
return NULL;

for (int i = 0; i < n; ++i)
{
if (NULL == ptr_front)
return NULL;          //表明链表的长度小于n
ptr_front = ptr_front->next;
}

while (ptr_front != NULL)
{
ptr_front = ptr_front->next;
ptr_behind = ptr_behind->next;
}
return ptr_behind;
}
2.3    Implement an algorithm to delete a node in the middle of a single linked list, given only access to that node.

EXAMPLE    Input: the node ‘c’ from the linked list a->b->c->d->e       Result: nothing is returned, but the new linked list looks likea->b->d->e

例子  输入：指向链表 a->b->c->d->e 中结点c的指针       结果：无返回值，得到一个新链表 a->b->d->e

bool deleteNode(LINK_NODE *c)
{
if ((NULL == c) || (NULL == c->next))
return false;     //没有考虑被删结点为尾结点的情况

c->data = t->data;
c->next = t->next;
delete t;
return true;
}

bool deleteNode(LINK_NODE **pNode)
{

if ((NULL == *pNode))
return false;
if (NULL == (*pNode)->next)
{
delete (*pNode);
*pNode = NULL;
return true;
}
(*pNode)->data = t->data;
(*pNode)->next = t->next;
delete t;
return true;
}

LINK_NODE **pNode = &c ;
//这里c为给定的链表中要被删除的结点
if (deleteNode(pNode))
{
}
else
cout << "failure" << endl;

bool deleteNode(LINK_NODE *&pNode)
{

if ((NULL == pNode))
return false;
if (NULL == pNode->next)
{
delete (pNode);
pNode = NULL;
return true;
}
pNode->data = t->data;
pNode->next = t->next;
delete t;
return true;
}

## Chapter 2 | Linked Lists--实现两个单链表数据的和

2.4     You have two numbers represented by a linked list, where each node contains a single digit. ...

## 查找单链表中倒数第n个节点

http://www.nowamagic.net/librarys/veda/detail/496 通过一次遍历找到单链表中倒数第n个节点，链表可能相当大，可使用辅助空间，但是辅助空间的数目必须固...

## 【LeetCode-面试算法经典-Java实现】【019-Remove Nth Node From End of List（移除单链表的倒数第N个节点）】

【019-Remove Nth Node From End of List（移除单链表的倒数第N个节点）】【LeetCode-面试算法经典-Java实现】【所有题目目录索引】原题　　Given a l...

## CareerCup之2.2 寻找单链表倒数第n个元素

【题目】 原文： 2.2 Implement an algorithm to find the nth to last element of a singly linked list. 译文：...

## 单链表倒数第节点

• 2014年10月10日 20:07
• 2KB
• 下载

## 取单链表倒数第k个元素

• 2011年12月07日 11:57
• 7KB
• 下载

## 单链表查找倒数第N个元素&输出中间元素

1： 单链表中查找倒数第n个元素 通过一次遍历找到单链表中倒数第n个节点，链表可能相当大，可使用辅助空间，但是辅助空间的数目必须固定，不能和n有关。 单向链表的特点是遍历到末尾后不能反向重数N个节...
• rtyytr
• 2011年09月14日 21:00
• 2279

举报原因： 您举报文章：Chapter 2 | Linked Lists--返回单链表倒数第n个元素及删除中间的某个节点 色情 政治 抄袭 广告 招聘 骂人 其他 (最多只允许输入30个字)