ICode9

精准搜索请尝试: 精确搜索
  • 链表相关2021-12-28 22:36:10

    1、链表反转 模板: 1.1 反转链表 1 class Solution { 2 public ListNode reverseList(ListNode head) { 3 ListNode prev = null; 4 ListNode curr = head; 5 while (curr != null) { 6 ListNode next = curr.next; 7

  • LeetCode——19. 删除链表的倒数第 N 个结点2021-12-25 13:59:46

    目录 题目1.链接2.题目描述3.解题思路4.题解 题目 1.链接 19. 删除链表的倒数第 N 个结点. 2.题目描述 3.解题思路 1、使用双指针,让fast先走n步,然后slow和fast一起走,当fast走到结尾,slow刚好差n步到结尾,即刚好指向要删的节点 2、因为删除一个节点需要找到对应节点的

  • leetcode-环形链表(每日一题)2021-12-24 19:58:30

    给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不

  • 单链表反转,快慢指针解决链表的常见问题2021-12-23 14:32:50

    文章目录 单链表反转初探快慢指针判断是否为环形链表问题;查询链表的环入口单链表的排序使用 单链表反转 可一直向下递归,找到最后一个节点; 然后让head节点的next指向最后一个节点,逐个向上返回,达到反转链表效果; 具体实现 在之前的单向链表OneDirectionLinked基础上

  • 5、双指针技巧套路框架——Go语言版2021-12-22 13:04:32

    前情提示:Go语言学习者。本文参考https://labuladong.gitee.io/algo,代码自己参考抒写,若有不妥之处,感谢指正 关于golang算法文章,为了便于下载和整理,都已开源放在: https://github.com/honlu/GoLabuladongAlgorithm https://gitee.com/dreamzll/GoLabuladongAlgorithm 方便就请分享,st

  • 双指针法相关题目2021-12-21 22:00:26

    // class Solution { // public int removeElement(int[] nums, int val) { // Arrays.sort(nums); // int slow = 0; // int fast = 1; // int len = nums.length; // for (; fast < len; fast++) { // if (nums

  • 数据结构与算法基本功:单链表是否有环,两种方式2021-12-21 16:00:13

    背景 数据结构是我们程序员的基本功,无论是在日常工作还是在求职面试中都会经常用到;而且近年来程序员的工作竞争越来越大,数据结构和算法在大厂的面试中都成了必考题。我所了解的:华为技术人员招聘必须先通过机试才能获得面试机会,机试为两道数据结构编码题,每道题200分总分400,240分

  • 163.重排链表2021-12-20 11:32:53

    目录143.重拍链表题目题解 143.重拍链表 题目 给定一个单链表 L 的头节点 head ,单链表 L 表示为: L0 → L1 → … → Ln - 1 → Ln 请将其重新排列后变为: L0 → Ln → L1 → Ln - 1 → L2 → Ln - 2 → … 不能只是单纯的改变节点内部的值,而是需要实际的进行节点交换。 示例 1: 输

  • 234. 回文链表2021-12-19 18:31:09

    class Solution { public boolean isPalindrome(ListNode head) { ListNode dummyHead = new ListNode(0, head); ListNode slow = dummyHead; ListNode fast = dummyHead; /** * 快慢指针找到中间节点 * 因为要反转右区

  • 巧用 Cat / set 查看大Log文件部分内容2021-12-18 17:30:01

        一般在 Linux 环境中,常需要分析Log文件,来判断问题来源及解决问题的思路,怎样快速从繁多的Log里找到有用信息呢?     下面分享一下我的做法: [oracle@c7m1 ~]$ cat -n alert_c7m1.log |grep FAST_START_MTTR_TARGET 433 MTTR advisory is disabled because FAST_START

  • 力扣刷题-python-双指针(数组、链表、字符串、N数之和)2021-12-17 19:04:31

    1.双指针 双指针用的太多了,但是双指针又不属于任何一个数据结构,所以单独拿一天来总结它。 2.数组篇 27. 移除元素 - 力扣(LeetCode) (leetcode-cn.com) 快慢指针法 class Solution: def removeElement(self, nums: List[int], val: int) -> int: slow=0 fo

  • 双指针:leetcode142(中等)——环形链表22021-12-14 17:04:11

    题目 题解 思路:floyd判圈法; # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: def detectCycle(self, head: ListNode) -> ListNode: fast,

  • 剑指offer(C++)-JZ22:链表中倒数最后k个结点(数据结构-链表)2021-12-14 16:34:54

    作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 输入一个长度为 n 的链表,设链表中的元素的值为 ai ,返回该链表中倒数第k个节点。 如果该链表长度小于k,请返回一个长度为 0 的链表。 数据范围:0<=n<=10^5,0<=ai<=10^9,0<=k<=10

  • 环形链表python3(leetcode141)2021-12-14 11:30:35

    #141. 环形链表   # Definition for singly-linked list. # class ListNode: # def __init__(self, x): # self.val = x # self.next = None class Solution: def hasCycle(self, head: ListNode) -> bool: #判断是否存在环,是leetcode142的

  • LeetCode 19.删除链表的倒数第N个结点2021-12-13 18:32:59

    题目给你一个链表,删除链表的倒数第 n 个结点,并且返回链表的头结点。 示例 1:输入:head = [1,2,3,4,5], n = 2输出:[1,2,3,5] 示例 2:输入:head = [1], n = 1输出:[] 示例 3:输入:head = [1,2], n = 1输出:[1] 分析可以先求链表长度length,然后向后走length - n步找到待删元素的前一位,但是至

  • 双指针2021-12-11 11:02:41

    我认为双指针技巧还可以分为两类,一类是「快慢指针」,另一类是「左右指针」。前者解决主要解决链表中的问题,比如典型的判定链表中是否包含环;后者主要解决数组(或者字符串)中的问题,比如二分查找。 一、快慢指针的常见算法 快慢指针一般都初始化指向链表的头结点 head,前进时快指针 fast

  • 148. 排序链表2021-12-07 22:36:09

    给你链表的头结点 head ,请将其按 升序 排列并返回 排序后的链表 。 进阶: 你可以在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序吗? 来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/sort-list 著作权归领扣网络所有。商业转载请联系官方授权,非商业转载

  • 141. 环形链表2021-12-07 17:31:59

    给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中没有环。注意:pos 不作为

  • 第 270 场力扣周赛2021-12-07 09:30:18

    第一百一十二天 --- 第 270 场力扣周赛 题目一思路:直接模拟细节 代码附加 题目二思路细节 代码 题目一 力扣:2094. 找出 3 位偶数 思路:直接模拟 1、因为构造所有三位数,所以三次枚举出所有给定数组中的所有数,并保证: <1> 整数为偶数 <2> 整数不包含前导零,也就是枚举第

  • 141.环形链表2021-12-06 22:00:10

    141.环形链表 题目描述 题目链接 快慢双指针法实现 #pragma once #include <iostream> using namespace std; typedef struct ListNode { int val; struct ListNode* next; }ListNode,*LinkList; //头插法创建单链表 void CreateList_H(LinkList& L, int n) { //

  • 【每日一题】2021年12月6日-剑指 Offer 22. 链表中倒数第k个节点2021-12-06 20:02:09

    输入一个链表,输出该链表中倒数第k个节点。为了符合大多数人的习惯,本题从1开始计数,即链表的尾节点是倒数第1个节点。 例如,一个链表有 6 个节点,从头节点开始,它们的值依次是 1、2、3、4、5、6。这个链表的倒数第 3 个节点是值为 4 的节点。 来源:力扣(LeetCode)链接:https://leetcode-cn.

  • 【two pointers】程序设计竞赛系列第七章——六道力扣经典带你刷爆双指针2021-12-05 21:03:55

    欢迎回到:遇见蓝桥遇见你,不负代码不负卿!  目录 一、什么是two pointers 二、 栗子引入 三、力扣经典 栗子一:反转字符串 栗子二:救生艇 栗子三:链表的中间节点 栗子四:环形链表 栗子五:环形链表 II 栗子六:链表的倒数第K个节点 四、蓝桥结语:遇见蓝桥遇见你,不负代码不负卿! 【前言】

  • LeetCode 1412021-12-05 20:33:50

    题目描述:  环形链表 给你一个链表的头节点 head ,判断链表中是否有环。 如果链表中有某个节点,可以通过连续跟踪 next 指针再次到达,则链表中存在环。 为了表示给定链表中的环,评测系统内部使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。如果 pos 是 -1,则在该链表中

  • Python编程题35--删除字符串中的所有相邻重复项2021-12-05 11:01:09

    题目 给定仅由小写字母组成的非空字符串,存在一个重复项删除操作,其会选择两个相邻且相同的字母,并删除它们。 请在字符串上反复执行重复项删除操作,直到无法继续删除,并在完成所有重复项删除操作后返回最终的新字符串。 例如: 给定一个字符串:aaabbaaaca,返回结果:ca 给定一个字符串:a,返回

  • 双指针(4)2021-12-04 22:03:00

    双指针(4) https://leetcode-cn.com/problems/remove-nth-node-from-end-of-list 栈(递归),双指针都涉及,是道好题。 我的原做法,性能还可以,也达到过100% 主要是用了双倍的指针进度。 这是原做法的性能,在两方面都可圈可点。 class Solution { public: ListNode* removeNthFromEn

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

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

ICode9版权所有