【动态规划,求数组不相邻数字的最大子串值】教程文章相关的互联网学习教程文章

1608. 特殊数组的特征值【代码】

难度 easy 给你一个非负整数数组 nums 。如果存在一个数 x ,使得 nums 中恰好有 x 个元素 大于或者等于 x ,那么就称 nums 是一个 特殊数组 ,而 x 是该数组的 特征值 。 注意: x 不必 是 nums 的中的元素。 如果数组 nums 是一个 特殊数组 ,请返回它的特征值 x 。否则,返回 -1 。可以证明的是,如果 nums 是特殊数组,那么其特征值 x 是 唯一的 。 示例 1: 输入:nums = [3,5] 输出:2 解释:有 2 个元素(3 和 5)大于或等于...

day2 - 循环,字符串,数组,字典,元祖【代码】

1. 字符串格式化:占位符 %s 什么类型的都可以%d 整数, 不保留小数,是字符串就会报错%f 小数,是字符串就会报错,如果想要保留2为小数 %.2fprint("新的年纪 %.2f" %age3)input 返回的就是 string 类型type是看变量的类型 2. 比较运算符:==!=>=<=innot in3. 布尔类型:True False4. 循环:while,forwhile 一定要有计数器,用来控制循环的次数continue:如果在循环里面遇到continue,结束本次循环,立马进入下次循环 break:如...

448. 找到所有数组中消失的数字【代码】【图】

这题和之前的268. 丢失的数字 、136. 只出现一次的数字 、387. 字符串中的第一个唯一字符 有类似又有不同的地方 由于本题中的数组元素存在相同元素,有的出现2次,有的出现1次,所以不能使用异或来直接得出结果。 于是我们想到使用哈希表来构建映射关系,参考387题。 但是题目提出了进一步的要求,不使用额外的空间。这里我们利用数组本身来代替哈希表实现对应 的映射关系。key,value对应关系为数组下标,数组的值。由题意我们可以...

前缀和数组和差分数组

把一个数组可以改写成前缀和数组和差分数组,其中的数据可以得到保存。 差分具体是个什么东西? 给你一个序列a,设一个序列s为a序列中相邻两个数的差,即s(i)=a(i)?a(i?1)。特别的,未赋值的a(0)为0。 我们发现,这样一个数就可以用前面所有的差的和来表示,即a(i) = a(i)?a(i?1)+a(i?1)?a(i?2)+…+a(1)?a(0) = s(i)+s(i?1)+…+s(1) 这就是差的前缀和。 如数组

1.filter对数组对象去重时的特殊处理【代码】【图】

1.filter通常情况下是用来返回一个符合条件的新数组的,并且他不会对原数组产生影响: comment_or_reply_id: "ob8qj0xq8e5s",from_uid: "1502039268@qq.com",isAgreeClick: true,topic_id: "604629fd0344202df0b22d81",topic_type: "nous_articles"},{comment_or_reply_id: "1",from_uid: "666",isAgreeClick: true,topic_id: "604629fd0344202df0b22d81",topic_type: "nous_articles"} ] let crr = {from_uid: "150203926...

树状数组【代码】【图】

#include<cstdio> #include<iostream> #include<algorithm> using namespace std; int total[500005]; int n,m; int lowbit(int x) {return(~x+1)&x; } void add(int i,int x) {while(i<=n){total[i] += x;i+=lowbit(i);} } int sum(int x) {int ans=0;while(x!=0){ans+=total[x];x-=lowbit(x);}return ans; } int main(void) {cin >> n >> m;for(int i = 1;i<=n;i++){int x; cin >> x;add(i,x);}while(m--){int a; cin >> a;if(a ...

数组判断全零的一些代码研究【代码】

最精简版本int check_data(int *array, int n) {while(n--)if (*array++ != 0x00)return 0;return 1; }返回1 array数组全零,否则正常非全零。int check_data(int *array) { while(*array++ != 0x00)return 0;return 1; }更加精简方式如上段代码。

3.30_419.数组_二维数组及滚动数组_甲板上的战舰(middle)【代码】

给定一个二维的甲板, 请计算其中有多少艘战舰。 战舰用 X’表示,空位用 .表示。 你需要遵守以下规则: 给你一个有效的甲板,仅由战舰或者空位组成。 战舰只能水平或者垂直放置。换句话说,战舰只能由 1xN (1 行, N 列)组成,或者 Nx1 (N 行, 1 列)组成,其中N可以是任意大小。 两艘战舰之间至少有一个水平或垂直的空位分隔 - 即没有相邻的战舰。示例 : X…X …X …X 在上面的甲板中有2艘战舰。 无效样例 : …X XXXX …X 你不会收...

3-数组的概述【代码】

一、数组的概述 1.数组的理解:数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名, 并通过编号的方式对这些数据进行统一管理。 2.数组相关的概念:数组名元素角标、下标、索引数组的长度:元素的个数3.数组的特点: 1)数组是有序排列的 2)数组属于引用数据类型的变量。数组的元素,既可以是基本数据类型,也可以是引用数据类型 3)创建数组对象会在内存中开辟一整块连续的空间 4)数组的长度一旦确定,...