
hacker_算法
算法+数据结构=效率
睹小物
change is always better
展开
-
leetcode_day03_字母异位词分组
https://leetcode-cn.com/problems/group-anagrams/给定一个字符串数组,将字母异位词组合在一起。字母异位词指字母相同,但排列不同的字符串。示例:输入: ["eat", "tea", "tan", "ate", "nat", "bat"]输出:[ ["ate","eat","tea"], ["nat","tan"], ["bat"]]说明:所有输入均为小写字母。不考虑答案输出的顺序。map的values()为list,...原创 2021-02-05 13:09:20 · 172 阅读 · 1 评论 -
leetcode_day03_有效的字母异为词(map)
https://leetcode-cn.com/problems/valid-anagram/给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词。示例1:输入: s = "anagram", t = "nagaram"输出: true示例 2:输入: s = "rat", t = "car"输出: false方法class Solution { public boolean isAnagram(String s, String t)..原创 2021-02-04 10:01:54 · 161 阅读 · 0 评论 -
leetcode_day03柱状图中最大的矩形(单调栈思想)
https://leetcode-cn.com/problems/largest-rectangle-in-histogram/给定 n 个非负整数,用来表示柱状图中各个柱子的高度。每个柱子彼此相邻,且宽度为 1 。求在该柱状图中,能够勾勒出来的矩形的最大面积。以上是柱状图的示例,其中每个柱子的宽度为 1,给定的高度为[2,1,5,6,2,3]。图中阴影部分为所能勾勒出的最大矩形面积,其面积为10个单位。示例:输入: [2,1,5,6,2,3]输出: 10...原创 2021-01-31 11:59:08 · 157 阅读 · 0 评论 -
leetcode_day03有效括号(栈最近相似思想)
https://leetcode-cn.com/problems/valid-parentheses/给定一个只包括 '(',')','{','}','[',']'的字符串 s ,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。示例 1:输入:s = "()"输出:true示例2:输入:s = "()[]{}"输出:true示例3:输入:s = "(]"输出:false示例4:输入:s = "(...原创 2021-01-26 00:27:56 · 137 阅读 · 0 评论 -
leetcode_day02反转链表(迭代思想)
https://leetcode-cn.com/problems/reverse-linked-list/反转一个单链表。示例:输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL方法class Solution { public ListNode reverseList(ListNode head) { ListNode prev=null; //.原创 2021-01-23 17:01:40 · 146 阅读 · 0 评论 -
leetcode_day02旋转数组(反转思想)
https://leetcode-cn.com/problems/rotate-array/给定一个数组,将数组中的元素向右移动k个位置,其中k是非负数。进阶:尽可能想出更多的解决方案,至少有三种不同的方法可以解决这个问题。你可以使用空间复杂度为O(1) 的原地算法解决这个问题吗?示例 1:输入: nums = [1,2,3,4,5,6,7], k = 3输出: [5,6,7,1,2,3,4]解释:向右旋转 1 步: [7,1,2,3,4,5,6]向...原创 2021-01-23 15:54:59 · 219 阅读 · 0 评论 -
leetcode_day01_三数之和(双指针思想)
https://leetcode-cn.com/problems/3sum/方法classSolution{publicList<List<Integer>>threeSum(int[]nums){List<List<Integer>>list=newArrayList<>();//if((nums.length==3)&&(nums[0]+nums[1...原创 2021-01-21 13:34:59 · 156 阅读 · 0 评论 -
leetcode_day01_爬楼梯(枚举思想)
https://leetcode-cn.com/problems/climbing-stairs/假设你正在爬楼梯。需要 n阶你才能到达楼顶。每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢?注意:给定 n 是一个正整数。示例 1:输入: 2输出: 2解释: 有两种方法可以爬到楼顶。1. 1 阶 + 1 阶2. 2 阶示例 2:输入: 3输出: 3解释: 有三种方法可以爬到楼顶。1. 1 阶 + 1 阶 + 1 阶2. 1 阶 + ...原创 2021-01-17 20:37:06 · 197 阅读 · 0 评论 -
leetcode_day01_盛最多的水(双指针思想)
https://leetcode-cn.com/problems/container-with-most-water/给你 n 个非负整数 a1,a2,...,an,每个数代表坐标中的一个点(i,ai) 。在坐标内画 n 条垂直线,垂直线 i的两个端点分别为(i,ai) 和 (i, 0) 。找出其中的两条线,使得它们与x轴共同构成的容器可以容纳最多的水。说明:你不能倾斜容器。示例 1:输入:[1,8,6,2,5,4,8,3,7]输出:49解释:图中垂直线代表输入数组 ...原创 2021-01-17 20:09:37 · 190 阅读 · 0 评论 -
leetcode_day01_移动零(双指针思想)
https://leetcode-cn.com/problems/move-zeroes/给定一个数组nums,编写一个函数将所有0移动到数组的末尾,同时保持非零元素的相对顺序。示例:输入:[0,1,0,3,12]输出:[1,3,12,0,0]说明:必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。最简单的做法就是,遍历数组,非零的第一种做法第二种做法0位中间值...原创 2021-01-17 19:26:19 · 223 阅读 · 0 评论 -
java折半查找算法实现
折半查找算法:public class hacker_01_zheban { public static void main(String[] args) { int[] arr= {12,10,7,6,2,100}; kuaipai(arr,0,arr.length-1); // 参考我的java快速排序算法 for (int i : arr) { System.out.println(i);原创 2020-11-05 09:12:13 · 612 阅读 · 0 评论 -
java快速排序实现
快排代码:public class hacker_02_kuaipai { public static void main(String[] args) { int[] arr= {12,10,7,6,2,100}; kuaipai(arr,0,arr.length-1); for (int i : arr) { System.out.println(i); } }// 快速排序原创 2020-11-05 09:09:43 · 200 阅读 · 0 评论 -
java冒泡排序算法实现
冒泡代码:public class hacker_01_maopao { public static void main(String[] args) { int[] arr= {12,10,7,6,2,100}; maopao(arr); for (int i : arr) { System.out.println(i); } }// 冒泡排序 public static void原创 2020-11-05 09:02:53 · 148 阅读 · 0 评论 -
操作系统——sjf算法python实现
python源码:代码:# --*-- coding:utf-8 --*--# python3.5import timepcb = []# 列表保存进程# 输入函数def InPcb(): # n 计数读取的行数 n = 0 print("读取的文本内容为......") with open("pcb.txt") a...原创 2019-04-02 22:58:49 · 2429 阅读 · 2 评论