ICode9

精准搜索请尝试: 精确搜索
  • 翻转链表2019-08-08 17:03:20

    【问题】输入一个链表,反转链表后,输出新链表的表头。 【思路】第一种思路,使用一个堆栈去保存所有的节点,然后再进行依次弹出后并连接起来即可! 1/* 2struct ListNode { 3 int val; 4 struct ListNode *next; 5 ListNode(int x) : 6 val(x), next(NULL) { 7

  • 数据结构与算法基础之非循环单链表创建和链表遍历2019-08-07 23:51:32

    1 #include<stdio.h> 2 #include<malloc.h> 3 #include<stdlib.h> 4 //函数声明 5 PNODE create_list();//返回值是链表头结点的地址 6 void traverse_list(PNODE pHead); 7 8 typedef struct Node{ 9 int data;//数据域10 struct Node * pNext;//指针域 11 }NODE,*

  • 关于链表的一些题目2019-08-05 12:04:27

    文章目录1.删除链表中的重复元素运行结果:2.删除递增有序链表中大于min,小于max的元素运行结果:3.逆置链表第一种策略:第二种策略运行结果:完整代码: 1.删除链表中的重复元素 前一个与后一个比较,相同就删除结点,并释放内存。 void DeleteEqual(PNODE &pHead){ //删除链表中的重复

  • 剑指 offer之链表中环的入口结点_Java2019-07-24 12:36:23

    题目:链表中环的入口结点 题目描述 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 解题思路: ps: 来自剑指 offer评论区 假设x为环前面的路程(黑色路程),a为环入口到相遇点的路程(蓝色路程,假设顺时针走), c为环的长度(蓝色+橙色路程) 当快慢指针相遇的时候: 此时慢

  • 单向链表的查删改功能,以及约瑟夫环,相交链表的第一个相交节点的查找等相关问题2019-07-22 11:55:15

    slist.h//头文件 #ifndef _SLIST_H_ #define _SLTST_H_ #include<stdio.h> #include<stdlib.h> #include<string.h> #include<math.h> typedef int SLTDataType; typedef struct SListNode { SLTDataType data; struct SListNode* next

  • 输出链表倒数第K个元素的节点值2019-07-20 17:38:34

    #include <stdlib.h> #include <string.h> #include <stdio.h> typedef struct _ListNode{ int data; struct _ListNode *next; }ListNode; ListNode* LinkList_Create(int *value,int len) { ListNode *pHead = (ListNode*)malloc(sizeof(ListNode)

  • 【剑指offer】翻转链表2019-07-12 21:04:16

    题目链接   【题目描述】 输入一个链表,反转链表后,输出新链表的表头。   【解题思路】 新建一个链表,用头插法将原链表插入新链表中即能实现反转。   【代码】 1 /* 2 struct ListNode { 3 int val; 4 struct ListNode *next; 5 ListNode(int x) : 6 v

  • 两个链表有一个交点,如何在时间复杂度 O(n) 和 空间复杂度 O(1) 的条件下实现?_字节跳动面试题2019-07-10 15:03:40

    输入两个链表,找出它们的第一个公共结点 我们可以首先遍历两个链表得到它们的长度,就能知道哪个链表比较长, 我们可以首先遍历两个链表得到它们的长度,就能知道哪个链表比较长,以及长的链表比短的链表多几个结点。在第二次遍历的时候,在较长的链表上先走若干步,接着再同时在两个链表上遍历

  • 24.复杂链表的复制2019-07-08 21:05:36

    题目描述: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 思路:在每一个节点后面复制一个该节点,然后取偶数位置上的

  • 55 链表中环的入口结点2019-07-08 11:54:52

    题目要求:给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。 思路一: Floyd环判定算法 使用fastptr和sloeptr两个速度不相同的指针,一旦它们两个进入链表中的环,就肯定会相遇 时间复杂度O(n) 空间复杂度O(1) 错误代码:没有看清楚题目啊?不是让你判断链表是否有环,而

  • 剑指offer:复杂链表的复制2019-07-06 19:57:01

    题目描述输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) # -*- coding: utf-8 -*- # @Time : 2019-07-05 15:52 #

  • 剑指offer--反转链表、合并可以排序的两个链表2019-07-02 17:49:28

    开宗明义:本系列基于牛客网剑指offer,刷题小白,一天两道我快乐!旨在理解和交流,重在记录,望各位大牛指点! 牛客网-剑指offer 文章目录1、反转链表2、合并可以排序的两个链表 1、反转链表 描述:输入一个链表,反转链表后,输出新链表的表头。 思路1:见代码注释; 测试代码: #include <algo

  • 剑指offer_【25】复杂链表的复制2019-07-02 14:23:24

    1.题目描述 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 2.解题思路 这题我没懂。代码借鉴别人的 3.代码 /*

  • 分割链表2019-06-28 20:56:24

    以给定值x为基准将链表分割成两部分,所有小于x的结点排在大于或等于x的结点之前 分析: 如果直接对原链表操作,链表会断裂,导致链表连接不完整,所以我们将原链表按大于x和小于等于x,将链表分成两条新链表,结点遍历结束后,再将两条链表连接起来。 过程 C++代码 /* struct ListNode

  • 链表中环的入口结点2019-06-24 19:02:00

    1 # -*- coding:utf-8 -*- 2 # class ListNode: 3 # def __init__(self, x): 4 # self.val = x 5 # self.next = None 6 class Solution: 7 def EntryNodeOfLoop(self, pHead): 8 # write code here 9 plist = []10 while p

  • 链表之单链表2019-06-21 17:49:39

      一、什么是链表,链表的分类? ·链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 ·八种链表结构: 1,单向、双向 2,带头、不带头 3,循环、非循环 常用的有: 1,无头单向非循环链:结构简单,一般不会单独用来存数据。实际中更多是

  • 操作系统进程调度和存储管理作业2019-06-15 14:52:30

    操作系统进程调度作业 操作系统进程调度作业 锻炼下思维! 进程调度1 问题描述: ​ 要求输入3个进程,找出最先执行的那个进程的进程名。(如果遇到优先级一样,按照输入顺序执行。),本题中,优先数数值大的表示优先级比较高。 输入格式: ​ 程序要求输入3行,以回车符号

  • 剑指Offer 182019-06-13 15:39:33

    删除重复的节点: 1 class Solution: 2 def deleteDuplication(self, pHead): 3 if pHead == None or pHead.next == None: 4 return pHead 5 n = pHead.next 6 if pHead.val == n.val: 7 while n and pHead.val == n.val: 8

  • 剑指Offer的学习笔记(C#篇)-- 反转链表2019-05-19 14:53:37

    题目描述 输入一个链表,反转链表后,输出新链表的表头。 一 . 概念普及         关于线性表等相关概念请点击这里。 二 . 实现方法         目前,可以有两种方法实现该要求。         方法一:借助外部空间实现。这里可以将单链表储存为数组,然后按照数组的索引逆序进行反转

  • 【剑指Offer】55、链表中环的入口结点2019-05-18 21:42:52

      题目描述:   给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。   解题思路:   本题是一个比较典型的链表题目,难度适中。首先,对于大多人来说,看到这道题是比较开心的,因为判断一个链表是否存在环的方法,基本上大家都知道,就是快慢指针法,但是再仔细一看,本题除了

  • 复杂链表的复制2019-05-16 17:55:06

    题目: 输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针指向任意一个节点),返回结果为复制后复杂链表的head。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空) 思路: 1.先把每个节点复制出一个节点并把每个复制出的节点连

  • Win32小游戏--贪吃蛇2019-05-16 11:40:06

    近日里学习了关于win32编程的相关知识,利用这些知识制作了一款贪吃蛇小游戏,具体细节还是分模块来叙述 前期准备:在网上找到一些贪吃蛇的游戏素材图片,以及具体的逻辑框图 在正式写功能之前,先把一系列环境配置好,配置环境总体来说分为以下几步: 图片转化为bmp格式( Bitmap )二进制流 将

  • C:有空头链表(纯代码,注释)2019-05-16 09:43:49

    #include <stdio.h>#include <stdlib.h>//结点结构体struct Node{    int a;    struct Node * pNext;};//链表头尾指针struct Node * g_pEnd = NULL;//这里的null没有意义,因为在主函数开始会直接给head和end申请地址,成为空头struct Node * g_pHead = NULL;void InitListHead

  • 算法随笔-替换字符串中的子串2019-05-04 20:54:01

        在我们的项目里,经常会将字符串中的指定的内容替换为我们需要的内容,这里我们就来实现这这个小算法。 具体需求则为:将字符串中的指定子串替换为设置的字符串,并返回替换的总数,实现比较简单,主要是指针的运算,下边直接代码展示: #include <iostream> #include <string.h> #in

  • 链表操作2019-05-04 18:47:59

    #include <stdio.h>#include <stdlib.h>#include <stdbool.h>typedef struct node { int data; struct node * pNext;}NODE, *PNODE;PNODE createList(void);void traverseList(PNODE phead);int getListLength(PNODE pHead);void sortList(PNODE pHe

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有