一 理论:
1.数组的特性:
a.随机读效率很高,能直接算出地址,所以访问数组中任何数速度都不会相差太大
b.数组的插入与删除相对较慢,由于要移动相关的大多数元素
2.链表的特性:
a.随机读效率低,插入与读取快
二 实践:
1.数组:
#include <iostream>
int main(){
int array[] = { 5,4,3,2,13,20 };
std::cout << array[3] << std::endl;
std::cout << *(array+2) << std::endl;
return 0;
}
2.链表:
struct node{
int payload;
node* next;
};
int main(){
node* head = nullptr;
for (int i = 0 ; i < 18 ; i ++){
node* new_node = new node;
new_node->payload = i * 10;
new_node->next = head;
head = new_node;
}
node* iterator = head;
while(iterator){
std::cout << iterator->payload << std::endl;
iterator = iterator->next;
}
}