- 博客(6)
- 收藏
- 关注
原创 算法练习:两个正序数组的中位数
两个正序数组的中位数题目链接:https://leetcode-cn.com/problems/median-of-two-sorted-arrays/题干内容:给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。算法的时间复杂度应该为 O(log (m+n)) 。示例一:输入:nums1 = [1,3], nums2 = [2]输出:2.00000解释:合并数组 = [1,2,3] ,中位数 2示例二:输入:n
2022-04-08 19:05:28
245
原创 算法练习:无重复字符串的最长子串(有点难)
无重复字符串的最长子串(有点难)题目链接:无重复字符串的最长子串题干内容:给定一个字符串 s ,请你找出其中不含有重复字符的 最长子串 的长度。示例一:输入: s = "abcabcbb"输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例二:输入: s = "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。示例三:输入: s = "pwwkew"输出: 3解释: 因为无重复字符的最长子串是
2022-04-06 18:51:56
219
原创 算法练习:两数相加(中等难度)
两数相加题目链接: https://leetcode-cn.com/problems/add-two-numbers/题干内容:给你两个非空的链表,表示两个非负的整数。它们每位数字都是按照逆序的方式存储的,并且每个节点只能存储一位数字。请你将两个数相加,并以相同形式返回一个表示和的链表。你可以假设除了数字 0 之外,这两个数都不会以 0 开头。示例一:输入:l1 = [2,4,3], l2 = [5,6,4]输出:[7,0,8]解释:342 + 465 = 807.示例二:输
2022-04-01 11:33:33
1218
原创 算法练习:两数之和
两数之和给定一个整数数组nums和一个整数目标,返回两个数字的索引,使它们相加到目标。您可以假设每个输入都有一个解决方案,并且不能两次使用同一个元素。你可以按任何顺序返回答案。跟进:你能想出一个时间复杂度小于O(n2)的算法吗?Example 1:Input: nums = [2,7,11,15], target = 9Output: [0,1]Explanation: Because nums[0] + nums[1] == 9, we return [0, 1].Example 2:I
2022-03-30 14:03:06
928
原创 排序算法:冒泡、选择、插入
经典排序算法一张图概括十大经典排序算法:个人理解每种排序算法应该掌握的几点1. 实现思路:2. 会写代码:3. 时间复杂度:(1)时间频度 :一个算法执行所耗费的时间,从理论上是不能算出来的,必须上机运行测试才能知道。但我们不可能也没有必要对每个算法都上机测试,只需知道哪个算法花费的时间多,哪个算法花费的时间少就可以了。并且一个算法花费的时间与算法中语句的执行次数成正比例,哪个算法中语句执行次数多,它花费时间就多。一个算法中的语句执行次数称为语句频度或时间频度。记为T(n)。
2022-03-29 23:04:34
478
原创 Java实现二叉树的前序、中序、后序遍(递归+非递归)
Java实现二叉树的前序、中序、后序遍(递归+非递归)假设一个二叉树类为 BinaryNodeBinaryNode node = new BinaryNode();左子节点:BinaryNode left = node.left;右子节点:BinaryNode right = node.right;节点所存值:node.element;递归方式:过于简单。前序public void preOrder( BinaryNode node ){ if( node != null )
2022-03-28 16:47:09
133
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人