在这一章节中,我了解到了计算机的重要组成部分“内存”的奥妙所在,书中说计算机的内存与CPU一样,都是IC电子原件的一种,在阅读过CPU和内存知识后,我认为CPU等同于一个能够处理数据的“智能内存”,因为CPU和内存都是通过引脚来传递信号,使数据写入/读出。与CPU相似,内存中的数据也是由数组的形式来储存的,并且每个数据在数组中都有属于自己的“空间”,这个空间中包含了数据的值和数据所对应的地址,并且通过引脚传递出去,如此在需要某一数据时就可以快速的找到该数据。因此,在编写程序时所定义的变量实际上存储的是数据的地址,这就是程序编写中的“指针”,如此将内存划分为多个空间来分别存储不同的数据,再通过指针地址的方法连接,就如JAVA指针中栈内存中的变量指向堆内存,来节省空间,提高效率。在处理或储存临时数据时,则需要用到栈和队列,他们二者不同的地方就是存放和取出数据的顺序不一样,栈内存如同一个箱子——最先放的数据最晚取出。而队列则是一个抽屉,最先放的数据最先取出。因此二者也各有其用途,栈用于舍弃当前数据但随后会重新使用,而队列则是当大量数据涌入时,起到一个缓冲的作用,并且队列在存储时会将最后一个数据的地址放在第一个数据的前面,如此形成一个环状来提高效率。以上所有的数据存储都是通过链接来读取的,所以追加和删除数据也就是更改数据所对应的地址,例如1,2,3三个数据,如果要删除2,那么就将1对应的下一个数据的地址改为3的地址即可,从逻辑上进行更改。并且可通过链接来使用二叉查找树来划分数据的大小,进行分组来查询,进而能够提高查询效率。
标签:存储,计算机,队列,地址,内存,原理,数据,CPU From: https://www.cnblogs.com/xhsbk/p/18020167