摘要: 1、leetcode344 反转字符串 代码实现【双指针法,原地修改数组】 class Solution { public void reverseString(char[] s) { int left = 0; int right = s.length-1; while(right>=left){ 阅读全文
posted @ 2023-01-18 23:55 黄三七 阅读(47) 评论(0) 推荐(0)
摘要: 1、leetcode454 四数相加 代码实现 class Solution { public int fourSumCount(int[] nums1, int[] nums2, int[] nums3, int[] nums4) { HashMap<Integer,Integer> sumOfN 阅读全文
posted @ 2023-01-18 00:26 黄三七 阅读(23) 评论(0) 推荐(0)
摘要: 1、哈希表理论基础 哈希法的应用场景: 当需要快速判断一个元素是否出现在集合里的时候,就要考虑哈希法。 判断一个元素是否出现过 哈希表的概念: 哈希表是根据关键码的值而直接进行访问的数据结构。 常见的三种哈希结构 数组 set(集合) map(映射) 数组 VS set VS map 数组的大小是受 阅读全文
posted @ 2023-01-16 22:21 黄三七 阅读(73) 评论(0) 推荐(0)
摘要: 1、leetcode24 两两交换链表中的节点 思路图解 代码 class Solution { public ListNode swapPairs(ListNode head) { ListNode dummyHead = new ListNode(0); dummyHead.next = hea 阅读全文
posted @ 2023-01-14 22:45 黄三七 阅读(28) 评论(0) 推荐(0)
摘要: 1、链表理论基础 链表是以节点的方式来存储的【链式存储】 每个节点包括data域(存放数据)、指针域(next域、prev域) next域:指向下一个节点 最后一个节点的next域为null prev域:指向上一个节点 第一个节点的prev域为null 链表 VS 数组 链表的各个节点在内存中不一定 阅读全文
posted @ 2023-01-13 22:37 黄三七 阅读(44) 评论(0) 推荐(0)
摘要: 1、leetcode977 有序数组的平方 题目: 给你一个按非递减顺序排序的整数数组 nums,返回每个数字的平方组成的新数组,要求也按非递减顺序排序。 示例 1: 输入:nums = [-4,-1,0,3,10] 输出:[0,1,9,16,100] 解释:平方后,数组变为 [16,1,0,9,1 阅读全文
posted @ 2023-01-12 19:08 黄三七 阅读(94) 评论(0) 推荐(0)
摘要: 1、数组理论基础 数组的概念: 数组是存放在连续内存空间上相同类型数据的集合。【顺序存储结构】 数组特点: 数组下标从0开始 数组内存空间的地址连续 数组的查、改操作很方便 数组的增、删操作比较麻烦 增:需要开辟新的内存空间,并移动其他元素的内存空间地址。 删:需要移动后面元素的内存空间地址 2、二 阅读全文
posted @ 2023-01-11 17:06 黄三七 阅读(80) 评论(0) 推荐(0)