1.暴力法,思路比较简单,复杂度O(N*K) 2.用双端队列进行展示 想到双端队列的思路:只要遍历该数组,同时在双端队列的头去维护当前窗口的最大值(在遍历过程中,发现当前元素比队列中的元素大,就将原来队列中的元素祭天),在整个遍历的过程中我们再记录下每一个窗口的最大值到结果数组中。这样就是遍历数组的 ...
分类:
其他好文 时间:
2020-03-14 23:40:44
阅读次数:
81
题目 思路 看到数组子区间问题,第一步,先 排序 ,排完再说!!!(本文默认是排序,无需操作) 两个数组求解子区间的交集,我们可以设定两个指针i和j,分别遍历数组A和数组B。 假设数组A中的一个区间为[a1,b1],数组B中的一个区间为[a2,b2],想一下什么时候两个区间无交集? 如图所示,上述情 ...
分类:
编程语言 时间:
2020-03-14 23:29:48
阅读次数:
120
"题目" 题意:删除重复的字符,得到字典序最小的结果字符串 题解:贪心,咱们从结果字符串的左边开始,左边第一个字符在原字符串中的右边一定有n 1个不同的字符,这里n就是结果字符串的长度。 所以我们每次遍历数组,找到右边有n 1个不同字符的字符,并选择最小的那个。 由于最多26个字母,最多遍历26次, ...
分类:
其他好文 时间:
2020-03-13 20:22:01
阅读次数:
47
数组 数组是可以再内存中连续存储多个元素的结构,在内存中的分配是连续的,数组中的元素通过数组下标进行访问,数组下标从0开始。 优点:1、按照索引查询元素速度快2、按照索引遍历数组方便 缺点:1、数组的大小固定后就无法扩容了2、数组只能存储一种类型的数据3、添加,删除的操作慢,因为要移动其他的元素。 ...
分类:
其他好文 时间:
2020-03-11 11:08:56
阅读次数:
46
1_函数式编程思想概述 2_冗余的Runnable代码 RunnableImpl.java package com.itheima.demo03.Lambda;/* 创建Runnable接口的实现类,重写run方法,设置线程任务 */public class RunnableImpl impleme ...
分类:
其他好文 时间:
2020-03-10 16:02:20
阅读次数:
46
这次终于四题全过了。 这次比赛也确实比较简单 "第一题" ...
分类:
其他好文 时间:
2020-03-08 14:29:26
阅读次数:
62
我们知道,在Java语言中有三种循环,分别是while循环,do…while循环和for循环。其实,从JDK1.5开始,又引入了一种增强型for循环,这种新型的for循环主要是用来遍历数组或集合的,它的格式非常简单,下图展示了增强型for循环的基本结构:增强型for循环被设计出来就是为了遍历数组或者是集合的,所以在循环中都会指定一个数组或者是集合。为了方便程序员编码,增强型for循环不再通过”下标
分类:
编程语言 时间:
2020-03-08 00:58:34
阅读次数:
398
题目描述 数组中有一个数字出现的次数超过数组长度的一半,请找出这个数字。例如输入一个长度为9的数组{1,2,3,2,2,2,5,4,2}。由于数字2在数组中出现了5次,超过数组长度的一半,因此输出2。如果不存在则输出0。 思路:摩尔投票算法 假设array[0]为需要的这个数字,设置一个count初 ...
分类:
编程语言 时间:
2020-03-07 15:53:55
阅读次数:
56
一、对象数组的概述和使用 * A:案例演示 * 需求:我有5个学生,请把这个5个学生的信息存储到数组中,并遍历数组,获取得到每一个学生信息。 * Student[] arr = new Student[5]; //存储学生对象 arr[0] = new Student("张三", 23); arr[ ...
分类:
其他好文 时间:
2020-03-07 09:30:25
阅读次数:
103
for循环遍历 let array = ['a','b','c']; for (let i = 0;i < array.length;i++){ console.log(array1[i]); // a b c } 用for in的方遍历数组 for(let index in array) { co ...
分类:
编程语言 时间:
2020-03-06 15:05:39
阅读次数:
88