六六力扣刷题贪心算法之K次取反后最大化的数组和

前言之前小六六一直觉得自己的算法比较菜,算是一个短板吧,以前刷题也还真是三天打鱼,两台晒网,刷几天,然后就慢慢的不坚持了,所以这次,借助平台的活动,打算慢慢的开始开刷,并且自己还会给刷的题总结下,谈谈自己的一些思考,和自己的思路等等,希望对小伙伴能有所帮助吧,也可以借此机会把自己短板补一补,希望自己...

LeetCode刷题Day07——哈希表(n数之和、数组交集)

常见的三种哈希结构:数组set(集合)map(映射)数组对于那些知道长度的题目比较适宜,因为map的空间消耗要比数组的大,所以有的时候用数组更贱简单有效。但是数组的大小是有限的,受到系统栈空间(不是数据结构的栈)的限制。如果数组空间够大,但哈希...

LeetCode刷题Day03——数组(滑动窗口+螺旋矩阵)

滑动窗口:所谓滑动窗口,就是不断的调节子序列的起始位置和终止位置,从而得出我们要想的结果。滑动窗口也可以理解为双指针法的一种,只不过这种解法更像是一个窗口的移动。实现滑动窗口,主要确定如下三点:确定窗口内是什么:一般是确定满足某个条件的最短或最长的区间确定移动窗口的结束位置:结束位置先...

LeetCode刷题Day02——数组(元素删除、移动)

双指针法双指针法(快慢指针法): 通过一个快指针和慢指针在一个for循环下完成两个for循环的工作。定义快慢指针快指针:寻找新数组的元素 ,新数组就是不含有目标元素的数组慢指针:指向更新新数组下标的位置即快指针不断往后找合适的元素,找到后在慢指针所在位置更新该元素。一、移除元素文章链接:...

LeetCode刷题Day01——数组(二分查找)

一、二分查找题目链接:704.二分查找/** * <pre> * <p>最朴素的二分查找问题</p> * * 可以采用while循环进行查找,也可以采用递归进行查找 * 原理都一样,每次选择中间值进行判断,不断缩小查找的区间 * 左右指针不断靠拢,直到左右指针重叠...

【LeetCode刷题日志】189.轮转数组

【LeetCode刷题日志】189.轮转数组

1.题目描述OJ链接 【leetcode 题号:189. 轮转数组】【难度:中等】给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]...

力扣刷题-最大子数组和

本人入行以来已有数月,奈何技术一直平平,和资深程序员讨教方法,他们推荐我去刷算法,算法是能够提高程序员的逻辑思维能力,借助平台的这次活动,记录一下自己在学习算法路程上的心得于体会题目给你一个整数数组 nums ,请你找出一个具有最大和的连续子数组(子数组最少包含一个元素)...

LeetCode刷题:数组快慢指针法

LeetCode刷题:数组快慢指针法

Hi! 我是 Yumuing,一个技术的敲钟人 ‍ 每天分享技术文章,永远做技术的朝拜者 欢迎关注我的博客:Yumuing's blog 快慢指针法指的就是操作数组、链表及字符串等使用两个起点相同但前进步数不同的指针。相对于利用多次循环解决问题,快慢指针法的时间复杂度较低,执行效率高。对于快慢指针法...

3.力扣刷题之数组中数字出现的次数

3.力扣刷题之数组中数字出现的次数

题目:剑指 Offer 56 - I. 数组中数字出现的次数思路解决此题首先要清楚异或的概念。相同的数异或为0,不同的数异或为1,,此外0和任何数异或等于这个数本身。所以,本题数组里面所有数的异或=目标两个数异或。由于这两个数不同,所以异或结果必然不等于0.根据这个特性,我们可以采用分组的方法解决这...

力扣刷题记录——697. 数组的度、728. 自除数 、821. 字符的最短距离

力扣刷题记录——697. 数组的度、728. 自除数 、821. 字符的最短距离

697. 数组的度题目描述给定一个非空且只包含非负数的整数数组 nums,数组的 度 的定义是指数组里任一元素出现频数的最大值。你的任务是在 nums 中找到与 nums 拥有相同大小的度的最短连续子数组,返回其长度。示例 1:输入:nums = [1,2,2,3,1]输出:2解释:输入数...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。