2024年伽利略大学 java编程基础

伽利略大学 java编程基础算法区 树状数组 树状数组相较于二叉树删除了一些节点 注意到第一行删除的为偶数节点 而 2 存储的是 1 和 2 下面的节点的合 为其叶子节点 同时我们观察到每一层的节点等同于以其为根节点的叶子节点的合 而求这些节点全体的目标合使用不到的内容就会被删掉 剩下下面的节点共有 n 个

大家好,我是讯享网,很高兴认识大家。



算法区

树状数组

树状数组相较于二叉树删除了一些节点,注意到第一行删除的为偶数节点,而2存储的是1和2下面的节点的合(为其叶子节点),同时我们观察到每一层的节点等同于以其为根节点的叶子节点的合,而求这些节点全体的目标合使用不到的内容就会被删掉,剩下下面的节点共有n个,刚好和最初的数组大小相等。

我们可以观察到每层节点对应的末尾零的数量和层数相关,第n(从0开始)层对应二进制末位n个零。

前置知识lowbit :这代表将非负整数转换为二进制数然后取最低位1及其后面的0组成的数

 
讯享网 
讯享网

区间查询ask:进行区间查询,查询某一区间的sum

我们发现sum[7]=t[7]+t[6]+t[4] ,我们进一步发现,6=7-lowbit(7),4=6-lowbit(6),所以我们可以通过不断的-lowbit操作来实现求和

 

求[L,R]之间的区间合,等同于求[1,R]-[1,L-1]

讯享网

函数区

1.队列

定义:队列属于容器,允许先进先出,像排队一样

 
 

2.字符串 

 
返回字符串的长度(字符数)。与  相同,返回字符串的长度。判断字符串是否为空。访问字符串中指定位置的字符。访问字符串中指定位置的字符(带边界检查)。返回从指定位置开始的子字符串。查找子字符串在字符串中的位置。从字符串末尾开始查找子字符串的位置。替换字符串中的部分内容。在字符串末尾添加内容。在指定位置插入内容。删除指定位置的字符或子字符串。清空字符串。返回指向字符数据的指针(C++11 及之后的版本)。比较两个字符串。查找第一个匹配任意字符的位置。查找最后一个匹配任意字符的位置。查找第一个不匹配任意字符的位置。查找最后一个不匹配任意字符的位置。

一些常用的使用(C++)

格式化

cin.get() 从键盘读入一个字符,可以读入逗号之类的
int(a) 强制类型转换
cout输出左侧补0:

 

cout输出右侧补0:

 

printf动态调整输出格式

 

数学计算

1.幂函数 pow(数,指数)
note:若要开方的话,后面要用小数 伽利略大学 java编程基础

常识区

方法区

小讯
上一篇 2024-12-27 16:07
下一篇 2024-12-31 11:45

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/1730.html