首页 > 其他分享 >数组

数组

时间:2022-10-30 21:47:31浏览次数:66  
标签:arr int 元素 数组名 数组 sizeof

1.一维数组

①三种定义方式:

 

 

 回顾C:

1)数组的每个元素都是相同的数类型

2)数组放在一块连续的内存空间内

②一维数组数组名:

用途:

1)统计整个数组在内存中的长度(sizeof(数组名/数组下标...))

2)获取整个数组元素个数(sizeof(数组名)/sizeof(数组名[数组下标])=整个数组占用的内存大小/每个元素占用的内存大小)

3)获取数组在内存中的首地址(sizeof(数组名)=sizeof(数组名[0]))

小案例(元素逆置):

 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 int main(){
 6     int arr[] = {1,2,3,4,5};
 7     int start = 0;  //数组起始下标
 8     int end = sizeof(arr)/sizeof(arr[0]) - 1;   //获取数组尾部元素下标
 9     int temp = 0;   //临时变量
10     for (int i = 0; i < end + 1; i++){
11         cout << arr[i];
12     }
13     cout << endl;
14     while(start < end){
15         temp = arr[start];
16         arr[start] = arr[end];
17         arr[end] = temp;
18         start++;
19         end--;
20     }
21     end = sizeof(arr)/sizeof(arr[0]) - 1;
22     for (int i = 0; i < end + 1; i++){
23         cout << arr[i];
24     }
25     system("pause");
26     return 0;
27 }

============================================================================================

冒泡排序:

 

 

 1 #include <iostream>
 2 
 3 using namespace std;
 4 
 5 int main(){
 6     int arr[] = {4,2,8,0,5,7,1,3,9,6};
 7     int arrLen = sizeof(arr)/sizeof(arr[0]);
 8     for (int i = 0; i < arrLen; i++){
 9         cout << arr[i];
10     }
11     cout << endl;
12     for (int i = 0; i < arrLen-1; i++){
13         for (int j = 0; j < arrLen-1-i; j++){
14             if (arr[j] > arr[j+1]){
15                 int temp = arr[j];
16                 arr[j] = arr[j+1];
17                 arr[j+1] = temp;
18             }   
19         }   
20     }
21     for (int i = 0; i < arrLen; i++){
22         cout << arr[i];
23     }
24     system("pause");
25     return 0;
26 }

小结:

外循环=排序总轮次=元素个数-1

内循环=每轮对比次数=元素个数-当前排序轮次-1

============================================================================================

2.二维数组:

同C(平面直角坐标系)

①四类定义方式:

 

 输出参考99乘法表输出。

关于第二种方式,看下面例子:

 

②二维数组数组名:

看C去= =:二维数组 - Morning枫 - 博客园 (cnblogs.com)

 

标签:arr,int,元素,数组名,数组,sizeof
From: https://www.cnblogs.com/MorningMaple/p/16842316.html

相关文章

  • 【数据结构-数组】数组的相关算法
    目录1无序数组的排序——快速排序1.1升序排序1.2降序排序2有序数组的查找——折半查找(二分查找)2.1升序数组的查找2.2降序数组的查找3有序数组的合并——归并思想3.1......
  • 数组2
    冒泡算法voidbubble_sort(intarr[],intsz)//void为了排序完后不返回{inti=0;for(i=0;i<sz-1;i++){//intj=0;for(j=0;j<sz-1-......
  • 算法数组之种花问题
    题目假设有一个很长的花坛,一部分地块种植了花,另一部分却没有。可是,花不能种植在相邻的地块上,它们会争夺水源,两者都会死去。给你一个整数数组  flowerbed表示花坛,由若干0......
  • 排序算法之数组拆分
    题目给定长度为 2n 的整数数组nums,你的任务是将这些数分成 n对,例如(a1,b1),(a2,b2),...,(an,bn),使得从1到 n的min(ai,bi)总和最大。返回该最大总和......
  • 数组1
    基础语法形式/*intarr[10]={"qwe"};*/chararr1[]="qazxsw";printf("%d\n",sizeof(arr1));//sizeof计算所占空间大小(还要加上\0这个内存,所以有七个元素,计算变量,数组,......
  • 1005.maximize-sum-of-array-after-k-negations K次取反后最大化数组和
    问题描述1005.K次取反后最大化的数组和解题思路贪心算法代码classSolution{staticboolcmp(inta,intb){returnabs(a)>abs(b);}public:intlar......
  • 【C Primer PLus 摘录】第 10 章 数组和指针(未完)
    CPrimerPlus摘录第10章数组和指针10.1数组数组由数据类型相同的一系列元素组成。通过声明数组告诉编译器数组中内含多少元素和这些元素的类型。编译器根据......
  • 【XSY3470】Cherry(后缀数组)
    题意:给一个长度为\(n\)的串\(S\)和一个长度为\(b\)的串\(B\),有\(m\)个文本串,初始它们都是空串。需要支持\(q\)个操作,每个操作要么是给某个文本串后面接上串\(B......
  • Vue学习笔记之Vue判断字符串(或数组)中是否包含某个元素
    Vue判断包含0x00概述Vue判断​​字符串​​中是否包含某个字符串,有如下方法。 0x01includes方法(数组,字符串都可以)varstr=“HelloWorld!”......
  • php 读取 csv 转数组列表
    我们有个文档需要修改,但是文档列太多,以及数量太大,以至于眼睛看起来很吃力,于是我决定做个简单的转化用脚本读取我想要验证的列的内容是否正确.于是就产生了一个这样将csv......