数组day 05

java方法-稀疏数组

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

树状数组

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

day11| 20.有效的括号;150.逆波兰表达式求值;1047.删除字符串中的所有相邻重复项

20. 有效的括号 题目简述: 给定一个只包括 '(',')','{','}','[',']' 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。每个右括号都有一个对应的相同类型的左括号。 思路: 1. 利用一个栈实现 2. 构建 ......
括号 表达式 字符串 字符 1047

剑指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

day03

剑指 Offer 05. 替换空格 传送门 题意 请实现一个函数,把字符串 s 中的每个空格替换成"%20"。 分析 代码实现 public String replaceSpace(String s) { StringBuilder sb = new StringBuilder(); for(int ......
day 03

day02

剑指 Offer 06. 从尾到头打印链表 传送门 题意: 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回)。 分析: java代码实现 class Solution{ // 节点定义 // class ListNode{ // int val; // ListNode next; ......
day 02

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

day10| 225.用队列实现栈;232.用栈实现队列

题目简述: 请你仅使用两个队列实现一个后入先出(LIFO)的栈,并支持普通栈的全部四种操作(push、top、pop 和 empty)。 实现 MyStack 类: void push(int x) 将元素 x 压入栈顶。int pop() 移除并返回栈顶元素。int top() 返回栈顶元素。bo ......
队列 day 225 232 10

Java 数组

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

Java 稀疏数组

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

代码随想录day 32● 122.买卖股票的最佳时机II ● 55. 跳跃游戏 ● 45.跳跃游戏II

122.买卖股票的最佳时机II 给定一个数组,它的第 i 个元素是一支给定股票第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你可以尽可能地完成更多的交易(多次买卖一支股票)。 注意:你不能同时参与多笔交易(你必须在再次购买前出售掉之前的股票)。 示例 1: 输入: [7,1,5,3,6 ......
随想录 随想 时机 代码 股票

day01

剑指 Offer 09. 用两个栈实现队列 leetcode传送门 用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 ) 分析: ......
day 01

day32 打卡122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II

day32 打卡122.买卖股票的最佳时机II 55. 跳跃游戏 45.跳跃游戏II 122.买卖股票的最佳时机II 122题目链接 class Solution { public int maxProfit(int[] prices) { int result = 0 ; for (int i = ......
时机 股票 day 122 32

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

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

day9| 28. 实现strStr();459. 重复的子字符串

28. 实现strStr() 题目简述: 给你两个字符串 haystack 和 needle ,请你在 haystack 字符串中找出 needle 字符串的第一个匹配项的下标(下标从 0 开始)。如果 needle 不是 haystack 的一部分,则返回 -1 。 思路: 1. 暴力求解 2. ......
字符串 字符 strStr day9 day

day31(2023.3.31)

1.TCP双向通信(创建服务端) 2.TCP双向通信(创建客户端) 运行结果: 3.点对点聊天应用(创建服务端) 4.点对点聊天应用(创建客户端) 运行结果: 5.点对点应用聊天优化(服务端和客户端一起) 运行结果: 3月底了,一个月过去了,继续加油,冲冲冲! day31(2023.3.31)星期五 ......
31 2023 day

一维数组内存分析

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

Flask快速入门day 01(flask介绍、快速使用、配置文件、路由系统)

Flask框架 前言: Flask框架和Django框架的区别: Django框架: 大而全,内置的app的很多,第三方app也很多 Flask框架: 小而精,没有过多的内置app,只能完成web框架的基本功能,很多功能都需要借助第三方 拓展: python异步框架: fastapi:https:/ ......
路由 文件 系统 Flask flask

flask-day1——flask和python web框架介绍、flask快速使用、flask实现登陆显示用户信息的小案例、配置文件讲解、路由系统

一、Flask 和pythonweb框架介绍 1.1python web框架介绍 同步web框架 django:大而全,内置的app多,第三方app也多(通过uwsgi实现异步) Flask:小而精,没有过多的内置组件,只完成web框架最基本的功能,需要借助于第三方,完成更丰富的功能 web.py: ......
flask 路由 flask-day 框架 案例

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

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

day3 函数的定义和调用,练习编写简单的程序(记录3)

0331.h #ifndef _0331_H #define _0331_H /******************************************************************* * 文件名称:0331.h * 功能描述:函数的定义和调用的头文件 * 创建作者:w ......
函数 程序 day3 day

day3 函数的定义和调用,练习编写简单的程序(记录1)

一、函数的定义 可以分为以下两种: 1、函数声明和函数定义分离 这种方法将函数声明和函数定义分开,通常在头文件中先声明函数原型,然后在源文件中实现函数定义。 例如,头文件 example.h 中声明了一个函数 add: #ifndef EXAMPLE_H #define EXAMPLE_H int ......
函数 程序 day3 day

day3 函数的定义和调用,练习编写简单的程序(记录2)

一、值传递、指针传递、引用传递 值传递: 在值传递中,函数的形参是由实参的副本初始化的,也就是说,函数内部操作的是实参的一个拷贝。值传递适用于传递简单数据类型(如整数、浮点数、字符等)以及小型结构体等,可以避免意外的修改和副作用,但代价是需要进行大量的拷贝操作,可能会影响程序性能。 指针传递: 在指 ......
函数 程序 day3 day

华为OD机试 合并数组

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

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

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

洛谷P3368 【模板】树状数组 2-(区间修改,单点查询)

题目描述 如题,已知一个数列,你需要进行下面两种操作: 将某区间每一个数加上 x; 求出某一个数的值。 输入格式 第一行包含两个整数 N、M,分别表示该数列数字的个数和操作的总个数。 第二行包含 N 个用空格分隔的整数,其中第 i 个数字表示数列第 i 项的初始值。 接下来 M 行每行包含 2 或  ......
数组 区间 模板 P3368 3368

洛谷P3374 【模板】树状数组 1-(单点修改,区间查询)

题目描述 如题,已知一个数列,你需要进行下面两种操作: 将某一个数加上 x 求出某区间每一个数的和 输入格式 第一行包含两个正整数 n,m,分别表示该数列数字的个数和操作的总个数。 第二行包含 n 个用空格分隔的整数,其中第 i 个数字表示数列第 i 项的初始值。 接下来 m 行每行包含 33 个整 ......
数组 区间 模板 P3374 3374

C语言编程练习_查找数组中不重复的数字

题目描述:给定一个整形数组空间arr,数据中包含两个一样的数字若干,只有一个数字是单独一个。设计一个函数把这个出现一次的数字返回出来。 解决方案一: 穷举法:假设arr数组中的每个元素都是重复的。也可能是不重复的(效率差) #include<stdio.h> int fun1(int arr[], ......
语言编程 数组 语言 数字

day8| 344.反转字符串;541.反转字符串II;剑指offer 05.替换空格;151.翻转字符串里的单词;剑指offer 58.左旋转字符串

344.反转字符串 题目简述: 编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组s的形式给出。不要给另外的数组分配额外的空间,你必须原地修改输入数组,使用O(1)的额外空间解决这一问题。 解题思路: 没什么好说的,直接双指针 代码如下: class Solution: def re ......
字符串 字符 左旋 offer 空格