ICode9

精准搜索请尝试: 精确搜索
  • 数组排序 之 选择排序2021-08-04 23:34:12

    java实现选择排序 利用选择排序对无序数组进行排序 选择排序算法的基本原理: 从0索引处开始,依次和后面的元素进行比较,小的元素或者大的元素往前放,经过一轮比较后小的元素或者大的元素会放在第一个位置,依次往后第二轮第三轮 … 循环。 代码实现: package array3; import java.u

  • 乘积最大子数组2021-08-04 23:32:44

        变量简洁正确完整思路 具有某种递推关系dpi,因为遇到负数则前面越小越好,所以维护dp2 i,遇到正数,则前面的越大越好,不要麻烦的ifelse,直接维护dp和dp2,一个最大一个最小   精确定义 dp i 第i个元素结尾连续数组最大乘积,dp0是空,dp1是第一个 dp2 i 第i个元素结尾连续数组最小乘积

  • 迪杰斯特拉(Dijkstra)算法图解2021-08-04 23:03:32

    基本思想: 通过Dijkstra计算图G中的最短路径时,需要指定一个起点D(即从顶点D开始计算)。 此外,引进两个数组S和U。S的作用是记录已求出最短路径的顶点(以及相应的最短路径长度),而U则是记录还未求出最短路径的顶点(以及该顶点到起点D的距离)。 初始时,数组S中只有起点D;数组U中是除起点

  • ArrayList扩容过程2021-08-04 23:02:15

    在研究ArrayList扩容过程之前,先看下ArrayList的几个参数和构造函数: // 默认的list的长度10 private static final int DEFAULT_CAPACITY = 10; // 空实例的共享空数组实例(有参构造函数使用),相比jdk1.7,这里是1.8版本优化,减少空数组产生 private static final Object[] EMPTY_ELE

  • 【LeetCode】33. 搜索旋转排序数组2021-08-04 23:00:51

    33. 搜索旋转排序数组 知识点:数组,二分查找; 题目描述 整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]](下标

  • 二维数组和稀疏数组相互转换棋盘问题2021-08-04 22:33:58

    问题引起:棋盘问题 思路: 1.创建二维数组并进行赋值统计数据个数 public int twoDimensionalArray(){ int sum = 0; arr[2][5] = 1; arr[3][6] = 2; arr[4][8] = 3; arr[5][3] = 4; arr[6][1] = 5; arr[7][0] = 6; for (int i = 0; i < arr.lengt

  • 数组的简单应用2021-08-04 22:03:09

    1 public class Array02 { 2 public static void main(String[] args) { 3 int[] arr01 = {1,2,3,4,5}; 4 // 将arr01中的每一个值分别赋值给arr , 该for只能适合运用遍历输出。 5 for (int arr: arr01){ 6 System.out.print(arr

  • [LeetCode]56. 合并区间2021-08-04 22:01:42

    56. 合并区间 难度:中等 以数组 intervals 表示若干个区间的集合,其中单个区间为 intervals[i] = [starti, endi] 。请你合并所有重叠的区间,并返回一个不重叠的区间数组,该数组需恰好覆盖输入中的所有区间。 示例 1: 输入:intervals = [[1,3],[2,6],[8,10],[15,18]] 输出:[[1,6],[8

  • JZ37 数字在升序数组中出现的次数2021-08-04 21:58:29

    思路一:暴力破解||哈希表 public class Solution { public int GetNumberOfK(int [] array , int k) { if(array==null||array.length==0) return 0; int num=0; int i=0; while(i<array.length) { if(arra

  • 剑指Offer03.数组中重复的数字2021-08-04 20:32:37

    找出数组中重复的数字。 题目描述 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。示例 1: 输入: [2, 3, 1, 0, 2, 5, 3] 输出:2 或 3限制:2 <= n <=

  • 【C++】找到数组中消失的数字2021-08-04 20:32:15

    给你一个含 n 个整数的数组 nums ,其中 nums[i] 在区间 [1, n] 内。请你找出所有在 [1, n] 范围内但没有出现在 nums 中的数字,并以数组的形式返回结果。 示例 1: 输入:nums = [4,3,2,7,8,2,3,1] 输出:[5,6] 示例 2: 输入:nums = [1,1] 输出:[2] 思路 1.将数组元素存放到元素减1的索

  • 数组的方法2021-08-04 19:58:06

    语法 数组对象.方法名 (实际参数) (一)添加 push() 作用:在数组的尾部添加任意个元素 参数:待添加的元素 返回值:新数组的长度 特点:改变原数组 unshift() 作用:在数组的头部添加任意个元素 参数,返回值,特点上同 (二)删除 pop() 在数组的尾部删除 shift() 在数组的头部删除 (三)反转 r

  • JavaScript之unshift()——将新项添加到数组起始位置2021-08-04 19:31:57

    定义和用法 unshift() 方法可向数组的开头添加一个或更多元素,并返回新的长度。 注意: 该方法将改变数组的数目。 提示: 将新项添加到数组末尾,请使用 push() 方法。 浏览器支持 所有浏览器都支持unshift方法,Internet Explorer 8及更早IE版本不支持。 说明: unshift() 方法在Inter

  • leetcode_611. 有效三角形的个数--未解决的枚举优化2021-08-04 18:57:37

    leetcode_611 题目描述 题目大意 思路描述 代码 写在最后 题目描述 给定一个包含非负整数的数组,你的任务是统计其中可以组成三角形三条边的三元组个数。 示例 1: 输入: [2,2,3,4] 输出: 3 解释: 有效的组合是: 2,3,4 (使用第一个 2) 2,3,4 (使用第二个 2) 2,2,3 注意

  • 可变参数,数组排序,二维数组2021-08-04 18:31:33

    今日内容 数组排序 数组应用 对为数组 扩展 数组炒作:数组的扩容 复制 去重 排序 查找 1.可变参数 调用方法时:形参和形参要一一对应:个数,类型,顺序 形参:可以变化的值 public static void main(String[] args) { // TODO Auto-generated method stub //调用方法:调用可变参数

  • 每日一练-leetcode2021-08-04 17:03:15

    581. 最短无序连续子数组 给你一个整数数组 nums ,你需要找出一个 连续子数组 ,如果对这个子数组进行升序排序,那么整个数组都会变为升序排序。 请你找出符合题意的 最短 子数组,并输出它的长度。 示例 1: 输入:nums = [2,6,4,8,10,9,15]输出:5解释:你只需要对 [6, 4, 8, 10, 9] 进行升序

  • JavaScript数组去重多种方法2021-08-04 17:01:21

    一、利用ES6 Set去重(ES6中最常用) function unique (arr) { return Array.from(new Set(arr)) } var arr = [1,1,'true','true',true,true,15,15,false,false, undefined,undefined, null,null, NaN, NaN,'NaN', 0, 0, 'a', 'a',{

  • 递归思想实现多个数组的排序2021-08-04 15:58:08

    使用递归思想实现数组排序方法的定义: 递归排序 recursiveSort(array) { //递归结束条件 if (array.length <= 1) { return array; } //取中间元素的索引 var index = Math.floor(array.length / 2); //获取中间元素 var t

  • 1198:逆波兰表达式2021-08-04 15:03:30

    逆波兰表达式 1 #include<iostream> 2 #include<cstdio> 3 #include<cstdlib> 4 using namespace std; 5 6 const int N=55; 7 char a[N]; 8 double antiPoland(){ 9 scanf("%s",a); 10 if(a[0]=='+') 11 return

  • 【C++】2021-08-04 15:02:19

    给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12] 输出: [1,3,12,0,0] 说明: 必须在原数组上操作,不能拷贝额外的数组。 尽量减少操作次数。 class Solution { public: void moveZeroes(vector<int>

  • 数组扁平化2021-08-04 14:57:37

    数组扁平化就是将多维数组转化成一维数组。以数组arr=[1,[2,3,[4,5]],6]为例。将其转化为一位数组。可以采用以下3种方式实现。 var arr=[1,[2,3,[4,5]],6] 方法1 利用数组自带的扁平化方法 console.log(arr.flat(Infinity));//[1, 2, 3, 4, 5, 6] 方法2 利用正则表达式 var res

  • js 数组和对象的关系以及区别2021-08-04 14:29:37

    以现代浏览器chrome运行一下代码 var arr=[]; //定义了一个空数组 console.log(typeof(arr)) //输出object console.log(arr.length) //输出0 var obj={}; //定义一个空对象 以上arr数组在console里展开可以得到以下内容 length: 0 //唯一可以读写的,表示的是刚才定义的空数

  • 2021年春季学期 计算学部《软件构造》课程 Lab 1实验报告2021-08-04 13:02:17

    2021年春季学期 计算学部《软件构造》课程 Lab 1实验报告 1实验目标概述 本次实验通过求解三个问题,训练基本 Java 编程技能,能够利用 Java OO 开 发基本的功能模块,能够阅读理解已有代码框架并根据功能需求补全代码,能够 为所开发的代码编写基本的测试程序并完成测试,初步保证所

  • 熬夜整理的c/c++万字总结(三),值得收藏!2021-08-04 11:36:54

    1、位运算 可以使用 C 对变量中的个别位进行操作。您可能对人们想这样做的原因感到奇怪。这种能力有时确实是必须的,或者至少是有用的。C 提供位的逻辑运算符和移位运算符。在以下例子中,我们将使用二进制计数法写出值,以便您可以了解对位发生的操作。在一个实际程序中,您可以使用一般

  • Jquery 遍历数组2021-08-04 09:31:06

    1、$.each() $.each(object,function(index,e){ ... }); object --> 需要遍历的对象或数组 index --> 索引 e --> 循环的每个元素 示例一: let temp = ""; $.each(selected, function (index, obj) { if (index != selected.length - 1) {

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有