`
monkeycn
  • 浏览: 43594 次
  • 性别: Icon_minigender_1
  • 来自: 福州
文章分类
社区版块
存档分类
最新评论

单向链表倒序操作

阅读更多
struct node
{
    int data;
    node* next;
};

// 单向链表头,如何倒序操作
inverse(node* head)
{
node thead;
thead.next = NULL;
for(current = head; current!=null; )
{
     if ( current == head )
     {
node * t = current->next;
         thead.next = current;
current->next = NULL;
         current = t;   
     }
     else
     {
     node * t = current->next;
        node* t2 = thead.next;

        thead.next = current;
        current->next = t2;        

        current = t;    
     }
}

return thead.next;

}
分享到:
评论
1 楼 monkeycn 2011-05-16  
网龙的面试题目

相关推荐

    链表倒序__实现单向链表倒序

    链表倒序操作在实际应用中可能涉及很多场景,例如数据库查询优化(如索引反转)、数据结构的翻转(如树的镜像)等。理解并熟练掌握链表倒序的实现方式,有助于提升解决复杂问题的能力。在面试或实际工作中,灵活运用...

    用C++类实现单向链表的增删查和反转操作方法

    在本文中,我们将深入探讨如何使用C++类来实现单向链表的基本操作,包括增删查和反转。单向链表是一种常见的数据结构,它由一系列节点组成,每个节点包含数据和指向下一个节点的指针。下面我们将按照文章的结构详细...

    C语言实现单链表逆序与逆序输出实例

    总结来说,单链表的逆序输出和逆序操作是数据结构和算法的基础知识,它们对理解和实现更复杂的链表操作如排序、查找等具有重要意义。熟练掌握这些技能有助于提升编程能力,特别是在处理动态数据结构的问题时。通过...

    计算机软件技术基础上机编程.pdf

    这份"计算机软件技术基础上机编程.pdf"文档主要涵盖了两个方面的内容:单向链表操作和二叉树的建立。以下是对这两个主题的详细解释: **单向链表** 1. **建立单向链表**: 链表是一种数据结构,它由一系列节点...

    java二叉树算法源码-DataStructure:常用数据结构及其算法的Java实现,包括但不仅限于链表、栈,队列,树,堆,图等经典数据结构

    单向链表的数据结构及其相关算法:单向链表结构包含两个要素,即头结点head和链表大小size,具体操作包括: 链表的增删 链表是否为空 链表的大小 链表的打印输出 删除链表重复节点 链表倒数第K个元素 链表的反转 ...

    Lua实现正序和倒序的文件读取方法

    在本文中,table被用来模拟单向链表的结构,每个节点存储文件的一行内容,并通过next指针指向下一个节点。链表的读取可以分为正序和倒序两种方式,正序是按照文件原顺序读取,而倒序则是逆向读取文件内容。 在具体...

    计算机软件技术基础实验报告讲义.pdf

    在实验中,`CreatLList()` 函数用于创建单向链表。首先,定义了一个结构体 `LinkList` 表示链表节点,包含一个整型数据域 `data` 和指向下一个节点的指针 `next`。`CreatLList()` 函数通过不断读取用户输入的数据...

    计算机常见笔试题

    #### 题目1:单向链表倒序建立 - **题目描述**:给定一个单向链表,要求在不申请新空间的情况下将其倒序,并返回新的链表头节点。 - **链表结构体定义**: ```cpp struct Link { int data; Link* next; }; ```...

    InserSort.rar_数据结构_Delphi_

    在本项目中,开发者可能通过创建一个单向链表来表示数据,然后利用插入排序对链表中的元素进行排序,并最终实现倒序显示链表的内容。 描述 "给定单向链,设计程序把单向链排列,并求倒序显示出来" 提出了两个主要...

    C\C++笔试题 经典的

    题目要求实现一个函数`ReverseLink(Link *p)`,该函数的功能是将传入的单向链表`p`进行倒序,并返回倒序后的链表头指针。此过程不能申请额外的空间。 #### 解决方案 有两种主要的方法来解决这个问题:一种是通过...

    计算机等级考试二级C语言上机试题上.doc

    #### 单向链表操作与排序插入 **知识点解析:** 单向链表是一种基本的数据结构,其中每个元素(节点)包含数据和指向下一个节点的指针。在C语言中,链表通常通过结构体实现。题目要求在已排序的链表中插入一个新...

    c++习题

    2. **判断单向链表中是否带有环链表** - 检测链表环可以通过使用两个指针,一个快指针每次移动两步,慢指针每次移动一步。如果链表有环,快指针最终会追上慢指针;若无环,则快指针会到达链表尾部。 3. **寻找倒数...

    高级程序设计语言-2019(A卷)(1).doc

    9. 删除并释放单向链表中结点的语句是:`p1->next = p1->next->next; free(p0);`。 10. 复制文件内容的语句是:`while((c=fgetc(fp1)) != EOF) fputc(c, fp2);`,EOF代表文件结束符。 **二、程序分析题** 1. 对于...

    数据结构实训选题数据结构实训选题

    本实训选题涵盖了数据结构的多个方面,包括单向循环链表、栈、队列、树、图、哈希表等数据结构,旨在帮助学生深入理解和掌握数据结构的基本概念和算法。 第一页:单向循环链表的应用 题目1:约瑟夫问题 约瑟夫...

    java高级工程师面试总结

    - 插入和删除操作比单向链表更复杂,因为需要同时更新前后节点的指针。 - **1亿个整数的倒序输出**: - 可以通过排序后再倒序输出的方式实现。 - 使用外排算法,将数据分割成小块,分别排序后再合并。 - **找出...

    天元特通题_嵌入式-常用知识&面试题库_大厂面试真题.docx

    2. 删除单向链表头元素函数实现: 错误:free(head) 释放头元素后,head 变量指向的内存已经被释放,无法再访问 head->next。 修改后代码:void removeHead(Node* head) { Node* temp = head; head = head->next; ...

Global site tag (gtag.js) - Google Analytics