题解 | #创建动态数组#

创建动态数组

http://www.nowcoder.com/practice/218b577112a24c23a41bdc01f28c18ac

题目的主要信息:

  • 输入一个nn,创建一个大小为nn的动态数组
  • 将数组中的元素初始化为nnn+1n+1、...、2n12n - 1,并输出

具体做法:

C++申请动态数组是依靠指针,数组是int型的我们就新开一个int型的指针,同时为这个新开的指针申请nn个int型的空间,我们用new语句直接申请即可。

alt

初始化的值我们仔细观察就是下标的基础上加了nn,那直接遍历初始化,再遍历输出即可。

#include <iostream>
using namespace std;

int main() {

	int n;
	cin >> n;
	int* arr = new int[n]; //指针申请n个空间
    for(int i = 0; i < n; i++) //初始化
        arr[i] = n + i;
    for(int i = 0; i < n; i++) //输出
        cout << arr[i] << " ";
	return 0;
}

复杂度分析:

  • 时间复杂度:O(n)O(n),初始化和输出都要遍历数组
  • 空间复杂度:O(n)O(n),申请了nn个int型空间
孤帆远影碧空尽 文章被收录于专栏

牛客网各类题单题解~

全部评论

相关推荐

allin秋招的单身...:我投过这家 上来就发个设计图给我,让我做好发到他邮箱
点赞 评论 收藏
分享
06-08 22:25
门头沟学院 Java
从零开始的转码生活:这hr不会打开手机不分青红皂白给所有人群发这句话,过一会再给所有人再发一遍,这肯定会有重复的,不管,再过一会再发一遍
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务