随笔分类 -  LeetCode学习

摘要:func binarySearch(_ array: [Int], _ target: Int) -> Int? { var left = 0 var right = array.count - 1 while left <= right { let mid = (left + right) / 2 阅读全文
posted @ 2024-02-26 21:05 黄增松 阅读(7) 评论(0) 推荐(0) 编辑
摘要:queue1 是最后生成的栈 queue2 是临时队列,把新进来的先放进去,再把queue1里的数据从头到尾读进去,然后互换 class MyStack { var queue1: [Int] = [] var queue2: [Int] = [] init() { } func push(_ x: 阅读全文
posted @ 2023-08-22 16:07 黄增松 阅读(11) 评论(0) 推荐(0) 编辑
摘要:给你一棵二叉树的根节点 root ,翻转这棵二叉树,并返回其根节点。 示例 1: 示例 2: /** * Definition for a binary tree node. * public class TreeNode { * public var val: Int * public var l 阅读全文
posted @ 2022-03-21 11:55 黄增松 阅读(29) 评论(0) 推荐(0) 编辑
摘要:给你一个整数数组 nums,请你将该数组升序排列。 示例 1: 输入:nums = [5,2,3,1] 输出:[1,2,3,5] 冒泡排序 class Solution { func sortArray(_ nums: [Int]) -> [Int] { guard nums.count > 1 e 阅读全文
posted @ 2021-06-17 09:33 黄增松 阅读(110) 评论(0) 推荐(0) 编辑
摘要:反转一个单链表。 示例: 输入: 1->2->3->4->5->NULL 输出: 5->4->3->2->1->NULL 进阶:你可以迭代或递归地反转链表。你能否用两种方法解决这道题? 思路:双指针迭代 public class ListNode { public var val: Int publ 阅读全文
posted @ 2021-01-06 15:09 黄增松 阅读(151) 评论(0) 推荐(0) 编辑
摘要:/** * Definition for a binary tree node. * public class TreeNode { * public var val: Int * public var left: TreeNode? * public var right: TreeNode? * 阅读全文
posted @ 2020-11-23 11:45 黄增松 阅读(128) 评论(0) 推荐(0) 编辑
摘要:快慢双指针法,快指针一次走两步,慢指针一次走一步,如果有环必会相遇 public class ListNode { public var val: Int public var next: ListNode? public init(_ val: Int) { self.val = val self 阅读全文
posted @ 2020-11-18 10:05 黄增松 阅读(133) 评论(0) 推荐(0) 编辑
摘要:假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢? 注意:给定 n 是一个正整数。 示例 1: 输入: 2 输出: 2 解释: 有两种方法可以爬到楼顶。 1. 1 阶 + 1 阶 2. 2 阶 示例 2: 输入: 3 输出: 3 解 阅读全文
posted @ 2017-09-28 21:59 黄增松 阅读(2227) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示