![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
算法
尘埃zza
搜索关注“开发者营地”公众号,持续分析优质技术文章
展开
-
剑指offer:中等部分
剑指offer:中等部分[001] 求1+2+…+n求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。示例 1:输入: n = 3输出: 6示例 2:输入: n = 9输出: 45限制:1 <= n <= 10000方法一:平均计算问题: 此计算必须使用 乘除法 ,因此本方法不可取。public int sumNums(int n) { return (1 + n)原创 2020-12-22 11:49:08 · 444 阅读 · 0 评论 -
剑指offer:简单部分
[001] 左旋转字符串字符串的左旋转操作是把字符串前面的若干个字符转移到字符串的尾部。请定义一个函数实现字符串左旋转操作的功能。比如,输入字符串"abcdefg"和数字2,该函数将返回左旋转两位得到的结果"cdefgab"。示例 1:输入: s = "abcdefg", k = 2输出: "cdefgab"示例 2:输入: s = "lrloseumgh", k = 6输出: "umghlrlose"限制:1 <= k < s.length <= 10000方原创 2020-11-18 11:05:51 · 372 阅读 · 0 评论 -
Leetcode热题100:简单部分
[001] 合并二叉树给定两个二叉树,想象当你将它们中的一个覆盖到另一个上时,两个二叉树的一些节点便会重叠。你需要将他们合并为一个新的二叉树。合并的规则是如果两个节点重叠,那么将他们的值相加作为节点合并后的新值,否则不为 NULL 的节点将直接作为新二叉树的节点。示例 1:输入: Tree 1 Tree 2 1 2原创 2020-11-09 19:12:47 · 451 阅读 · 0 评论 -
LeeCode 算法(Java实现)系列汇总
LeeCode 算法,使用Java实现,在这里做一个记录。现在更新到160题,其中绝大部分是简单难度,按通过率从高到低进行学习的。这部分先告一段落,更新Hot100题库和剑指offer题库,这两个题库学习完成后,会继续更新该部分。Leetcode数据结构与算法(一)Leetcode数据结构与算法(二)Leetcode数据结构与算法(三)Leetcode数据结构与算法(四)Leetcode数据结构与算法(五)Leetcode数据结构与算法(六)Leetcode数据结构与算法(七)Leetc原创 2020-10-29 15:55:30 · 1057 阅读 · 0 评论 -
Leetcode数据结构与算法(十)
[0145] 斐波那契数斐波那契数,通常用 F(n) 表示,形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。也就是:F(0) = 0, F(1) = 1F(N) = F(N - 1) + F(N - 2), 其中 N > 1.给定 N,计算 F(N)。示例 1:输入:2输出:1解释:F(2) = F(1) + F(0) = 1 + 0 = 1.示例 2:输入:3输出:2解释:F(3) = F(2) + F(1) = 1 +原创 2020-10-29 15:36:25 · 174 阅读 · 0 评论 -
Leetcode数据结构与算法(九)
[0129] 二叉树的层次遍历 II给定一个二叉树,返回其节点值自底向上的层次遍历。 (即按从叶子节点所在层到根节点所在的层,逐层从左向右遍历)例如:给定二叉树 [3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其自底向上的层次遍历为:[ [15,7], [9,20], [3]]方法一:BFS/** * Definition for a binary tree node. * public cla原创 2020-10-29 15:35:25 · 222 阅读 · 0 评论 -
Leetcode数据结构与算法(八)
[0113] 转置矩阵给定一个矩阵 A, 返回 A 的转置矩阵。矩阵的转置是指将矩阵的主对角线翻转,交换矩阵的行索引与列索引。示例 1:输入:[[1,2,3],[4,5,6],[7,8,9]]输出:[[1,4,7],[2,5,8],[3,6,9]]示例 2:输入:[[1,2,3],[4,5,6]]输出:[[1,4],[2,5],[3,6]]提示:1 <= A.length <= 10001 <= A[0].length <= 1000方法一:class原创 2020-10-29 15:34:06 · 317 阅读 · 0 评论 -
Leetcode数据结构与算法(七)
[0097] 一维数组的动态和给你一个数组 nums 。数组「动态和」的计算公式为:runningSum[i] = sum(nums[0]…nums[i]) 。请返回 nums 的动态和。示例 1:输入:nums = [1,2,3,4]输出:[1,3,6,10]解释:动态和计算过程为 [1, 1+2, 1+2+3, 1+2+3+4] 。示例 2:输入:nums = [1,1,1,1,1]输出:[1,2,3,4,5]解释:动态和计算过程为 [1, 1+1, 1+1+1, 1+1+1+1,原创 2020-08-10 23:04:11 · 589 阅读 · 0 评论 -
Leetcode数据结构与算法(六)
Leetcode数据结构与算法(六)原创 2020-06-12 11:28:17 · 569 阅读 · 0 评论 -
Leetcode数据结构与算法(五)
[0065]汉明距离两个整数之间的汉明距离指的是这两个数字对应二进制位不同的位置的数目。给出两个整数 x 和 y,计算它们之间的汉明距离。注意:0 ≤ x, y < 231.示例:输入: x = 1, y = 4输出: 2解释:1 (0 0 0 1)4 (0 1 0 0) ↑ ↑上面的箭头指出了对应二进制位不同的位置。方法一:异或...原创 2020-05-04 09:36:27 · 488 阅读 · 0 评论 -
Leetcode数据结构与算法(四)
[0049]二进制中1的个数请实现一个函数,输入一个整数,输出该数二进制表示中 1 的个数。例如,把 9 表示成二进制是 1001,有 2 位是 1。因此,如果输入 9,则该函数输出 2。示例 1:输入:00000000000000000000000000001011输出:3解释:输入的二进制串 00000000000000000000000000001011 中,共有三位为 '1'。...原创 2020-04-17 10:19:01 · 381 阅读 · 0 评论 -
Leetcode数据结构与算法(三)
Leetcode数据结构与算法###[0033]从尾到头打印链表输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。示例 1:输入:head = [1,3,2]输出:[2,3,1]限制:0 <= 链表长度 <= 10000方法一: 栈/** * Definition for singly-linked list. * public class ...原创 2020-04-08 09:45:38 · 333 阅读 · 0 评论 -
Leetcode数据结构与算法(二)
[0017] 二进制链表转整数给你一个单链表的引用结点 head。链表中每个结点的值不是 0 就是 1。已知此链表是一个整数数字的二进制表示形式。请你返回该链表所表示数字的 十进制值 。示例 1:输入:head = [1,0,1]输出:5解释:二进制数 (101) 转化为十进制数 (5)示例 2:输入:head = [0]输出:0示例 3:输入:head = [1]输出...原创 2020-03-26 10:20:39 · 395 阅读 · 0 评论 -
Leetcode数据结构与算法(一)
[0001]求1+2+…+n求 1+2+...+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。示例 1:输入: n = 3输出: 6示例 2:输入: n = 9输出: 45限制:1 <= n <= 10000解答:等差数列求和公式class Solution { ...原创 2020-03-20 10:07:58 · 1001 阅读 · 0 评论