JAVA
bajin7353
这个作者很懒,什么都没留下…
展开
-
【刷题第十一天】leetcode 475. 供暖器
题目:冬季已经来临。 你的任务是设计一个有固定加热半径的供暖器向所有房屋供暖。在加热器的加热半径范围内的每个房屋都可以获得供暖。现在,给出位于一条水平线上的房屋 houses 和供暖器 heaters 的位置,请你找出并返回可以覆盖所有房屋的最小加热半径。说明:所有供暖器都遵循你的半径标准,加热的半径也一样。示例 1:输入: houses = [1,2,3], heaters = [2]输出: 1解释: 仅在位置2上有一个供暖器。如果我们将加热半径设为1,那么所有房屋就都能得到供暖。思路:原创 2021-08-12 23:35:26 · 346 阅读 · 0 评论 -
【刷题第十一天】leetcode413. 等差数列划分
题目:如果一个数列 至少有三个元素 ,并且任意两个相邻元素之差相同,则称该数列为等差数列。例如,[1,3,5,7,9]、[7,7,7,7] 和 [3,-1,-5,-9] 都是等差数列。给你一个整数数组 nums ,返回数组 nums 中所有为等差数组的 子数组 个数。子数组 是数组中的一个连续序列。思路:从数组的第一个元素开始遍历,判断以第一个元素开始的所有子数组是否为等差数列,首先计算出前两个元素的差,如果第三个元素和第二个元素的差相等,则等差数组的个数加一,遇到不相等的情况直接退出当前元素的原创 2021-08-10 23:47:24 · 212 阅读 · 0 评论 -
【刷题第十天】leetcode 167.. 两数之和 II - 输入有序数组
题目:给定一个已按照 升序排列 的整数数组 numbers ,请你从数组中找出两个数满足相加之和等于目标数 target 。函数应该以长度为 2 的整数数组的形式返回这两个数的下标值。numbers 的下标 从 1 开始计数 ,所以答案数组应当满足 1 <= answer[0] < answer[1] <= numbers.length 。你可以假设每个输入只对应唯一的答案,而且你不可以重复使用相同的元素。思路:做个遍历,因为题目假设只对应唯一的答案,所以遍历的时候判断和等于t原创 2021-08-10 00:09:21 · 224 阅读 · 0 评论 -
【刷题第九天】leetcode560. 和为K的子数组
题目:给定一个整数数组和一个整数 k,你需要找到该数组中和为 k 的连续的子数组的个数。示例 1 :输入:nums = [1,1,1], k = 2输出: 2 , [1,1] 与 [1,1] 为两种不同的情况。说明 :思路:找出所有的连续子数组,依次计算和并且和k做比较,相等的则个数加一代码:public int subarraySum(int[] nums, int k) { int ans = 0; for (int i = 0; i < nums原创 2021-08-08 23:07:31 · 115 阅读 · 0 评论 -
【刷题第八天】leetcode187. 重复的DNA序列
题目:所有 DNA 都由一系列缩写为 ‘A’,‘C’,‘G’ 和 ‘T’ 的核苷酸组成,例如:“ACGAATTCCG”。在研究 DNA 时,识别 DNA 中的重复序列有时会对研究非常有帮助。编写一个函数来找出所有目标子串,目标子串的长度为 10,且在 DNA 字符串 s 中出现次数超过一次。示例 1:输入:s = “AAAAACCCCCAAAAACCCCCCAAAAAGGGTTT”输出:[“AAAAACCCCC”,“CCCCCAAAAA”]思路:滑动窗口+hashmap滑动窗口生成对应的子串原创 2021-08-06 00:19:06 · 134 阅读 · 0 评论 -
【刷题第七天】leetcode611.有效三角形的个数
题目:给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。示例 1:输入: [2,2,3,4]输出: 3解释:有效的组合是:2,3,4 (使用第一个 2)2,3,4 (使用第二个 2)2,2,3思路一:要能构成三角形,需要保证任意两边之和大于第三边,那么可以对输入的数组先进行排序,这样只需要保证小的两边之和大于第三边即可。代码:public int triangleNumber(int[] nums) { Arrays.sort(nums原创 2021-08-05 00:15:51 · 341 阅读 · 0 评论 -
【刷题第六天】leetcode581.最短无序连续子数组
题目:给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。请你找出符合题意的 最短 子数组,并输出它的长度思路一:目的是让整个数组有序,那么我们可以先将数组拷贝一份进行排序,然后使用两个指针 ii 和 jj 分别找到左右两端第一个不同的地方,那么 [i, j][i,j] 这一区间即是答案。代码:class Solution { public int findUnsortedSubarray(int[] nums) {原创 2021-08-04 00:09:32 · 106 阅读 · 0 评论 -
【刷题第五天】leetcode720. 词典中最长的单词
题目给出一个字符串数组words组成的一本英语词典。从中找出最长的一个单词,该单词是由words词典中其他单词逐步添加一个字母组成。若其中有多个可行的答案,则返回答案中字典序最小的单词。若无答案,则返回空字符串。思路:暴力解法,先排序,然后从数组倒序进行遍历,看其子串是否在前面出现过代码:public String longestWord(String[] words) { //对原数组中的元素排序 Arrays.sort(words); Str原创 2021-08-03 00:20:42 · 98 阅读 · 0 评论 -
Java多线程以及线程状态转换
Java多线程以及线程状态转换Java实现多线程的方式:1 继承Thread类,重写run方法。class MyThread extends Thread{ public void run(){ System.out.println(Thread.currentThread().getName()+"MyThread.run()!!"); }}publi...原创 2019-10-28 20:55:12 · 230 阅读 · 0 评论 -
Java IO流
JAVA IO 流IO 流的总体分类:流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间传输成为流流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。字节流是Java中可以按照最小字节单位读取的流,每次读写一个字节,字节流是直接连接到输入源的流。字符流以字符为最小单位读取。字节流和字符流的区别:在所有的流操作中,...原创 2019-09-26 21:08:15 · 150 阅读 · 0 评论 -
JAVA8lambda表达式和stream流
真的是好久没有来写了,今天来总结一下传说中的lambda和streamJAVA8 特性分析lambda表达式和函数式接口streamlambda表达式和函数式接口允许把函数当做参数传递给某个方法,或者把代码本身当作数据处理;(行为参数化)语法格式:(parameters)->expression 或者 (parameters)->{statements;}...原创 2019-09-26 21:05:51 · 316 阅读 · 0 评论 -
JAVA8新特性
Java8新特性lambda表达式详解一篇讲的很不错的博文转载 2019-09-02 17:21:29 · 117 阅读 · 0 评论