数组是存放一组相同元素的集合,数组分为一维数组和二维数组,接下来就让我们进行数组的学习,我们先来看一段代码。
#include
using namespace std;
int main()
{
int arr[5]={1,2,3,4,5}; //创建了一个数组,它里面包含了五个整型变量
int arr1[]={1,2,3,4,5};
return 0;
}
以上是数组的简单使用,来存放类型相同的数据,对于存放数据的数组,它自然会有存放不下和越界的问题。对于数组来说它在内存中是连续存放的,而且和现实中不同,数组是有下标的,对于第一个元素它的下标是0,因为有了下标所以要访问数组就不要越界访问。
知道了越界的知识后我们要对数组进行遍历,把它们打印在屏幕上。还要对它们进行逆序打印。
#include
using namespace std;
int main()
{
//对数组进行遍历输出
for(int i=0;i=0;j++)
{
cout
以上的代码用到了sizeof,它本身是计算数据类型所占内存的大小,用它就可以计算数组中有几个元素,下面的二维数组也会用到。说完了这个接下来我们来讲数组名的服务器托管网作用,以及它们的内存图示。
数组名其实是首元素的地址,其他元素按照数据类型往下依次存储,但是其中有两个特例,一个是sizeof(数组名)它表示的是整个数组的大小,第二个&数组名,它表示的是取出整个数组的地址。其他的情况出现的数组名均是首元素的地址。
接下来我们来看二维数组,二维数组也可以理解为几个一维数组的组合,比如一个三行四列的二维数据就可以理解为三个一维数组,一维数组中存放了四个元素,把它们和在一个就是二维数组。
#include
using namespace std;
int main()
{
int arr[][4] = { 1,2,3,4,5,6,7 };
int arr1[3][4] = { 1,2,3,4,5,6,7 };
int arr2[3][4] = { {1,2},{2,4},{4,5} };
return 0;
}
以上的二维数组的创建都是正确的,但是二维数组创建可以省略行但是不能省略列,这个需要引起注意。那么如何通过sizeof来计算行数和列数呢。
#include
using namespace std;
int main()
{
int arr[3][4] = { 1,2,3,4,5,6,7 };
cout
看完了一维数组的数组名,你是否对二维数组的数组名有一定的理解呢,对于一维数组它的数组名是首元素的地址,对于二维数组的数组名它也表示首元素的地址,对它们进行加一的操作会发生什么呢。
学完了数组的基本知识后,要介绍两个算法,一个是二分查找,一个是冒泡排序,学习完这两个算法会对你的数组认识更加熟练。什么是二分查找呢,它有个前提条件那就是数组中的数字是从小到大排列好的,有了这个前提我们再来说什么是二分查找。假若一个数组有十万个数字排列好从小到大,其中有一个目标数字,你要在十万个数字中找到它,若是按照传统的方法一个一个找,未免太想费时间,运用二分查找会使时间大大减少,提升运行效率。二分查找核心是如何对数组的下标进行熟练的应用。
以上是思路接下来我们来看代码的实现。
#include
using namespace std;
int binary_search(int arr[],int flag,int start,int end)
{
while (start arr[midest])
{
start = midest + 1;
}
else if (flag
冒泡排序的核心思想是两两进行比较,在一趟趟的比较中对数组进行升序或者降序排列。对于冒泡排序来说最关键的是两次for循环中的变量的条件设置,第一层循环的条件设置是一共有几个元素就排序几服务器托管网个元素减一躺,第二层循环是具体提到每一趟循环排序几次的问题。
#include
using namespace std;
void bubbles_sort(int arr[], int sz)
{
for (int i = 0; i arr[j+1])
{
int tmp = 0;
tmp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = tmp;
}
}
}
}
int main()
{
int arr[] = {1,34,56,23,44,21};
int sz = sizeof(arr) / sizeof(arr[0]);
bubbles_sort(arr,sz);
for (int i = 0; i
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
继续做题 拿到就是基本扫一下 服务器托管网 nmap -sP 172.25.0.0/24 nmap -sV -sS -p- -v 172.25.0.13 然后顺便fscan扫一下咯 nmap: fscan: 还以为直接getshell了 老演员了 其实只是30…