数组是一个容器,可以容纳固定数量的元素,这些元素应为同一类型,大多数数据结构都利用数组来实现其算法,以下是了解数组概念的重要术语。
Element - 数组中存储的每个值都称为元素。
Index - 数组中元素的每个位置都有一个数字索引,用于标识元素。
可以使用不同的语言以各种方式声明数组。为了说明起见,让我们以 C 数组声明为例。
可以使用不同的语言以各种方式声明数组。为了说明起见,让我们以C数组声明为示例。
根据上面的说明,以下是要考虑的重点。
索引从0开始。
数组长度为10,这意味着它可以存储10个元素。
每个元素都可以通过索引进行访问。如我们可以在索引6处获取一个元素为27。
以下是数组支持的基本操作。
遍历 - 逐一打印所有数组元素。
插入 - 在给定索引处添加一个元素。
删除 - 删除给定索引处的元素。
搜索 - 使用给定的索引或值搜索元素。
更新 - 更新给定索引处的元素。
插入操作是将一个或多个数据元素插入数组,根据要求,可以在数组的开头,结尾或任何给定的索引处添加新元素。
在这里,我们看到了插入操作的实际实现,我们在数组的末尾添加了数据-
#include <stdio.h> main() { int LA[] = {1,3,5,7,8}; int item = 10, k = 3, n = 5; int i = 0, j = n; printf("The learnfk original array elements are :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } n = n + 1; while( j >= k) { LA[j+1] = LA[j]; j = j - 1; } LA[k] = item; printf("The learnfk array elements after insertion :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } }
当我们编译并执行上述程序时,它将产生以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/data-structures-algorithms/array-data-structure.html
来源:LearnFk无涯教程网
The learnfk original array elements are : LA[0]=1 LA[1]=3 LA[2]=5 LA[3]=7 LA[4]=8 The learnfk array elements after insertion : LA[0]=1 LA[1]=3 LA[2]=5 LA[3]=10 LA[4]=7 LA[5]=8
删除是指从数组中删除现有元素并重新组织数组中的所有元素。
#include <stdio.h> void main() { int LA[] = {1,3,5,7,8}; int k = 3, n = 5; int i, j; printf("The learnfk original array elements are :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } j = k; while( j < n) { LA[j-1] = LA[j]; j = j + 1; } n = n -1; printf("The learnfk array elements after deletion :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } }
当我们编译并执行上述程序时,它将产生以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/data-structures-algorithms/array-data-structure.html
来源:LearnFk无涯教程网
The learnfk original array elements are : LA[0]=1 LA[1]=3 LA[2]=5 LA[3]=7 LA[4]=8 The learnfk array elements after deletion : LA[0]=1 LA[1]=3 LA[2]=7 LA[3]=8
您可以根据数组元素的值或索引来搜索它。
#include <stdio.h> void main() { int LA[] = {1,3,5,7,8}; int item = 5, n = 5; int i = 0, j = 0; printf("The learnfk original array elements are :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } while( j < n){ if( LA[j] == item ) { break; } j = j + 1; } printf("Found learnfk element %d at position %d\n", item, j+1); }
当我们编译并执行上述程序时,它将产生以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/data-structures-algorithms/array-data-structure.html
来源:LearnFk无涯教程网
The learnfk original array elements are : LA[0]=1 LA[1]=3 LA[2]=5 LA[3]=7 LA[4]=8 Found learnfk element 5 at position 3
更新操作是指以给定索引更新数组中的现有元素。
#include <stdio.h> void main() { int LA[] = {1,3,5,7,8}; int k = 3, n = 5, item = 10; int i, j; printf("The learnfk original array elements are :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } LA[k-1] = item; printf("The learnfk array elements after updation :\n"); for(i = 0; i<n; i++) { printf("LA[%d]=%d\n", i, LA[i]); } }
当我们编译并执行上述程序时,它将产生以下输出-
链接:https://www.learnfk.comhttps://www.learnfk.com/data-structures-algorithms/array-data-structure.html
来源:LearnFk无涯教程网
The learnfk original array elements are : LA[0]=1 LA[1]=3 LA[2]=5 LA[3]=7 LA[4]=8 The learnfk array elements after updation : LA[0]=1 LA[1]=3 LA[2]=10 LA[3]=7 LA[4]=8
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)