刷题专栏(二十一):区域和检索 - 数组不可变

简介: 刷题专栏(二十一):区域和检索 - 数组不可变

前言

刷题专栏到目前已经是第二十一篇了,欢迎大家来关注我的刷题专栏,一起来刷题。

今天这道题,还是涉及数组相关知识,《区域和检索 - 数组不可变》。

不过此题和其他题不太一样,此题是要单独实现一个类,并且要通过调用这个类的方法来实现某些效果。

这种类型的题大多需要在构造函数中做一些基础的初始化处理。

至于这道题具体的一些操作是什么,就让我们一起来看一下吧。

image.png

算法题:区域和检索 - 数组不可变

今天的这道题目看似描述的文字很多,其实并不难理解。

只需要抓住一个重要的点,就是如何在类实例化时将部分数据初始化。

解决了这个问题,也就很好做出来了。

下面我们就可以来看一下相关代码的编写了。

代码展示

此次运行的代码如下,就是通过构造函数来初始化内部元素,然后通过其他方法来取出相应的值。

class NumArray {
    int[] sums;
    public NumArray(int[] nums) {
        int n = nums.length;
        sums = new int[n + 1];
        for (int i = 0; i < n; i++) {
            sums[i + 1] = sums[i] + nums[i];
        }
    }
    public int sumRange(int i, int j) {
        return sums[j + 1] - sums[i];
    }
}
/**
 * Your NumArray object will be instantiated and called as such:
 * NumArray obj = new NumArray(nums);
 * int param_1 = obj.sumRange(left,right);
 */

代码执行结果

本次处理结果还是比较可以的,虽然内存消耗实为严重。就交给大家自己去完善一下了。

image.png

总结

这道题的不同之处在于给出了一个完整的类让大家去自己实现,那么为什么要给一个完整的类呢,必然就是要通过初始化来解决一下问题。

下回碰到这种题也就很容易解出来了。

目录
相关文章
数据结构一个小白的练级之路【链表的分割】题目参考
数据结构一个小白的练级之路【链表的分割】题目参考
|
算法 索引
带你读《图解算法小抄》十五、搜索(3)
带你读《图解算法小抄》十五、搜索(3)
|
算法
带你读《图解算法小抄》十五、搜索(4)
带你读《图解算法小抄》十五、搜索(4)
|
算法
带你读《图解算法小抄》十五、搜索(1)
带你读《图解算法小抄》十五、搜索(1)
带你读《图解算法小抄》十五、搜索(1)
|
算法
带你读《图解算法小抄》十五、搜索(2)
带你读《图解算法小抄》十五、搜索(2)
|
人工智能 算法 C语言
【算法笔记题解】《算法笔记知识点记录》第二章——快速入门3[函数、指针]
【算法笔记题解】《算法笔记知识点记录》第二章——快速入门3[函数、指针]
|
1月前
|
存储 算法 C++
【C++数据结构——查找】顺序查找(头歌实践教学平台习题)【合集】
若查找的关键字k=5,则SeqSearch函数输出是3,6,2,10,1,8,5,并返回值7。若查找的关键字为k=15,则函数输出是3,6,2,10,1,8,5,7,4,9,并返回值0。假设顺序表中R的关键字依次是3,6,2,10,1,8,5,7,4,9,(第一行是输入的一组原始关键字数据,第二行是要查找的关键字)顺序查找算法中要依次输出与k所比较的关键字,用空格分隔开。本关任务:实现顺序查找的算法。开始你的任务吧,祝你成功!
35 8
|
测试技术 索引 Python
【刷题日记】307. 区域和检索 - 数组可修改
本次刷题日记的第 24 篇,力扣题为:307. 区域和检索 - 数组可修改 ,中等
|
1月前
|
存储 算法 C++
【C++数据结构——查找】二分查找(头歌实践教学平台习题)【合集】
二分查找的基本思想是:每次比较中间元素与目标元素的大小,如果中间元素等于目标元素,则查找成功;顺序表是线性表的一种存储方式,它用一组地址连续的存储单元依次存储线性表中的数据元素,使得逻辑上相邻的元素在物理存储位置上也相邻。第1次比较:查找范围R[0...10],比较元素R[5]:25。第1次比较:查找范围R[0...10],比较元素R[5]:25。第2次比较:查找范围R[0..4],比较元素R[2]:10。第3次比较:查找范围R[3...4],比较元素R[3]:15。,其中是顺序表中元素的个数。
137 68
【C++数据结构——查找】二分查找(头歌实践教学平台习题)【合集】
|
算法 编译器 C语言
《算法笔记知识点记录》第二章——快速入门3[函数、指针](1)
《算法笔记知识点记录》第二章——快速入门3[函数、指针](1)

热门文章

最新文章