数组 题目 经典dfs

面试题45(Java)-把数组排成最小的数(中等)

题目: 输入一个非负整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 示例 1: 输入: [10,2] 输出: "102" 示例 2: 输入: [3,30,34,5,9] 输出: "3033459" 提示: 0 < nums.length <= 100 说明: 输出 ......
数组 Java 45

树状数组

树状数组 简单记录一下模板和用法,不做深入证明探究! 能解决的问题: 区间查询前缀和 单点修改(某个值+一个数) 是一个在 logN复杂度就能完成以上操作的数据结构。严格来说,能解决的问题是线段树的子集。 树状数组能够解决的问题,线段树一定可以解决!但是树状数组代码简单好写,相比臃肿庞大的线段树,能 ......
数组

Go 语言数组和切片的区别

原文链接: Go 语言数组和切片的区别 在 Go 语言中,数组和切片看起来很像,但其实它们又有很多的不同之处,这篇文章就来说说它们到底有哪些不同。 另外,这个问题在面试中也经常会被问到,属于入门级题目,看过文章之后,相信你会有一个很好的答案。 数组 数组是同一种数据类型元素的集合,数组在定义时需要指 ......
数组 语言 Go

453.最小操作次数使数组元素相等

最小操作次数使数组元素相等 给你一个长度为 n 的整数数组,每次操作将会使 n - 1 个元素增加 1 。返回让数组所有元素相等的最小操作次数。 示例 1: 输入:nums = [1,2,3] 输出:3 解释: 只需要3次操作(注意每次操作会增加两个元素的值): [1,2,3] => [2,3,3] ......
数组 元素 次数 453

1438. 绝对差不超过限制的最长连续子数组

力扣题目链接 给你一个整数数组 nums ,和一个表示限制的整数 limit,请你返回最长连续子数组的长度,该子数组中的任意两个元素之间的绝对差必须小于或者等于 limit 。 如果不存在满足条件的子数组,则返回 0 。 示例 1: 输入:nums = [8,2,4,7], limit = 4 输出 ......
数组 1438

[LeetCode] 1338. Reduce Array Size to The Half 数组大小减半

You are given an integer array arr. You can choose a set of integers and remove all the occurrences of these integers in the array. Return the minimum ......
数组 LeetCode 大小 Reduce Array

java三次题目集的知识点、题量、难度总结

一 . 第一次题目集。 7-1 本题只需导入Scanner类,定义两个float类型的变量身高和体重以接受控制台的输入,然后根据题目BIM=身高/体重的平方,用四个if句型对BIM的范围进行判断即可,题量少,难度较低。 需要注意的是错误输入给出的输出 input out of range 需加上 r ......
知识点 难度 题目 知识 java

PTA题目集1~3的总结性Blog

(1)前言: 目前发布了三次pta作业,第一次作业的题量适中,较为简单,主要了解了substring函数,math类,charAt方法的使用;在第二次作业中,首次出现了菜单计价程序编写的题目,题目量少但难度高,其中主要学习了StreamTokenizer快速输入的方法,类与类之间的调用联系,equa ......
总结性 题目 Blog PTA

PTA题目集1~3次总结

当我第一次开始学习Java编程时,我感到非常兴奋和好奇。我知道Java是一门非常流行和强大的编程语言,广泛用于许多不同领域的应用程序开发。经过上学期学习c语言的经历,我在一开始自信满满。但是随后来自老师的命令几岁了我的幻想。在得知我们需要自学基本语法时,我开始通过阅读书籍和在线教程来学习Java编程 ......
题目 PTA

dfs理解

dfs理解201 深搜(DFS)哔哩哔哩bilibili董晓 - 博客园 (cnblogs.com)深搜的时机在扩展当前节点的邻边之前,即for当前节点的儿子节点之前,刚进入当前这个节点。for完当前节点的所有儿子节点之后,要离开当前节点了。 开始for当前节点的扩展邻边时,即刚从当前节点出去。此时 ......
dfs

java题目集1~3的总结性Blog

一、前言 经历前三次java题目集的话,应该也算是相对了解了java这门语言了,因为有了c语言的基础在里面,所以一部分基础的语法部分就理解来说的话不算是很困难,但从面向过程到面向对象的一个思想观念的改变让我有些不适应。如果把编写代码比作下棋的话,那么面向过程就是一步一步的下棋,想到什么写什么,所以写 ......
总结性 题目 java Blog

第一次博客作业:PTA题目集1-3总结性Blog

PTA题目集1-3总结性Blog Java是一门面向对象的编程语言,与面向过程的C语言截然不同,尤其是在代码量大的时候,面向对象与面向过程的差别就尤为突出了。对于刚接触Java的我们来说,要从面向过程的思想转变到面向对象并不是一件简单的事情。 PTA三次作业概述 对于这三次大作业,我个人认为大致可以 ......
总结性 题目 第一次 博客 Blog

AcWing 第 97 场周赛 ABC(dfs)

https://www.acwing.com/activity/content/competition/problem_list/3088/ 果然绩点成绩和竞赛水平总得寄一个(to me ###4944. 热身计算 #include<bits/stdc++.h> using namespace st ......
AcWing ABC dfs 97

PTA题目集1-3总结

PTA题目集1-3总结 一、 前言 不知不觉java已经学习了三个星期了,在学习的过程也收获了不少,由于有C语言的铺垫,语法变化不是很大,如递归,选择,循环,和C语言中的类似,使得在学习语法的过程中比较轻松。但是在更重要的是面向对象的加入,在解决问题的思路和方法上与C语言截然不同,使得程序的编写难度 ......
题目 PTA

java方法-稀疏数组

稀疏数组 当一个数组中大部分元素为0,或者为同一值的数组时,可以使用稀疏数组来保存该数组 稀疏数组的处理方式是: 记录数组一共有几行几列,有多少个不同值 把具体不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模 如图:左原始数组,右稀疏数组 ......
数组 方法 java

树状数组

树状数组 简介 树状数组是一种用于维护 $n$ 个数的区间和的数据结构。 一般能用树状数组做的题,都可以使用线段树来做。相较于码量,树状数组的码量要比线段树少许多,不过相对应的,它所能实现的功能没有线段树多。 好的,不多说废话,下面进入正题。 例题 1:P3374【模板】树状数组 1 例题 2:P3 ......
数组

题目集1~3的总结性Blog

1、前言: 前三次题目集主要涉及到java的编程基础知识和有关类的简单知识。 (1)其中涉及了Java中的面向对象编程、控制语句、输入输出流、类和对象等基础知识点。具体包括类的定义、构造函数、成员变量和成员方法、访问权限修饰符、条件语句、循环语句、Scanner类的使用、System.out.pri ......
总结性 题目 Blog

剑指offer42(Java)-连续子数组的最大和(简单)

题目: 输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。 要求时间复杂度为O(n)。 示例1: 输入: nums = [-2,1,-3,4,-1,2,1,-5,4] 输出: 6 解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。 提示: 1 <= ar ......
数组 offer Java 42

VBA 对象数组排序算法分享

Function SrotObjectByProperty(objsToSort As Variant, PropertyName As String, Optional 降序 As Boolean = True) If IsEmpty(objsToSort) Then Exit Function ......
数组 算法 对象 VBA

HJ69_矩阵乘法_数组

思路: 三层循环实现矩阵相乘。 import sys a=[] for line in sys.stdin: a.append(list(map(int,line.strip().split()))) #print(a) matrix1=a[3:3+a[0][0]] matrix2=a[3+a[0] ......
乘法 数组 矩阵 HJ 69

Java 数组

数组 数组是相同类型数据的有序集合 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成 每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们 数组的声明和创建 首先必须声明数组变量,才能在程序中使用数组。 Java语言使用new操作符来创建数组,语法如下: dataTyp ......
数组 Java

Java 稀疏数组

稀疏数组 当一个数组中大部分元素为0时,或者为同一值的数组时,可以使用稀疏数组来保存该数组。 稀疏数组的处理方式是: 记录数组一共有几行几列,有多少个不同值 把具有不同值的元素和行列及值记录在一个小规模的数组中,从而缩小程序的规模 下面对该原始数组进行压缩,求出其稀疏数组: public stati ......
数组 Java

第一次博客:PTA题目集1-3总结

第一次博客:PTA题目集1-3总结 前言:JAVA是一门非常好的语言,因其面向对象的思想,在解决问题时思路与上学期学习的C语言截然不同,但是其优势也是显然易见的,特别是在写大型程序时其面向对象的思想,可以让人思路清晰。 这次PTA中三个“菜单计价”的题目让刚刚学习JAVA的我感到无力,但是在一阵磕磕 ......
题目 第一次 博客 PTA

【LBLD】小而美的算法技巧:前缀和数组

【LBLD】小而美的算法技巧:前缀和数组 一维数组中的前缀和 class NumArray { private: vector<int> preSum; public: NumArray(vector<int>& nums) { preSum.push_back(0); for (int i = 1 ......
前缀 数组 算法 技巧 LBLD

一维数组内存分析

Java虚拟机的内存划分 为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式。 区域名称 作用 虚拟机栈 用于存储正在执行的每个Java方法的局部变量表等。局部变量表存放了编译期可知长度<br/>的各种基本数据类型、对象引用,方法执行完,自动释放。 堆 ......
数组 内存

力扣---剑指 Offer 21. 调整数组顺序使奇数位于偶数前面

输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数在数组的前半部分,所有偶数在数组的后半部分。 示例: 输入:nums = [1,2,3,4]输出:[1,3,2,4] 注:[3,1,2,4] 也是正确的答案之一。 提示: 0 <= nums.length <= 500000 <= ......
奇数 偶数 数组 顺序 Offer

题目集1~3的总结性Blog

一、前言 本学期开展了面向对象程序设计这门课程,开始了Java语言的学习。目前,我们已完成三次pta大作业,让我收获了很多,慢慢从上个学期C语言面向过程的编程思想转变为面向对象程序设计的思想。现对三次作业做概括分析: 1.第一次作业 二、设计与分析 1.第一次作业 共九道题目,难度一般,均为基础题目 ......
总结性 题目 Blog

华为OD机试 合并数组

本期题目:合并数组 题目 现在有多组整数数组,需要将他们合并成一个新的数组, 合并规则:从每个数组里按顺序取出固定长度的内容,合并到新的数组。 取完的内容会删除掉,如果该行不足固定长度,或者已经为空, 则直接取出剩余部分的内容放到新的数组中继续下一行。 输入 第 1 行为每次读取的固定长度len,0 ......
数组

【Java】删除String数组中的所有空值

1、封装一个方法 /*** * 去除String数组中的空值 */ private String[] deleteArrayNull(String string[]) { String strArr[] = string; // step1: 定义一个list列表,并循环赋值 ArrayList<S ......
数组 String Java