全文预览

数据结构第一次作业

上传者:菩提 |  格式:doc  |  页数:6 |  大小:19KB

文档介绍
; void SelectSort(datalist<Type> & list)Р { for(int i=0; i<list.CurrentSize-1; i++) }Р template <class Type> viod SelectExchange(datalist<Type> & list, const int i){Р int k = i;Р for(int j=i+1;j< list.CurrentSize;j++)Р if(list.Vector[j].getKey()<list.Vector[k].getKey())Р 当前具有最小关键码的对象Р 交换Р }Р 五、简答题Р 1. 线性表可用顺序表或是链表存储,此两种存储表示各有哪些优缺点?Р 答:顺序存储表示是将数据元素存放于一个连续的存储空间中,实现顺序存取或(按下标)直接存取。它的存储效率高,存取速度快。但它的空间大小一经定义,在程序整个运行期间不会发生改变,因此,不易扩充。同时,由于在插入或删除时,为保持原有次序(没有规定元素进栈顺序),平均需要移动一半(或近一半)元素,修改效率不高。Р 链接存储表示的存储空间一般在程序的运行过程中动态分配和释放,且只要存储器中还有空间,就不会产生存储溢出的问题。同时在插入和删除时不需要保持数据元素原来的物理顺序,只需要保持原来的逻辑顺序,因此不必移动数据,只需修改它们的链接指针,修改效率较高。但存取表中的数据元素时,只能循链顺序访问,因此存取效率不高。Р 2. 设有一个输入数据的序列是{46,25,78, 62, 12, 37, 70, 29},试画出从空树起,逐个输入Р 各个数据而生成的二叉搜索树。Р 答: 46Р / \Р 25 78Р / \ /Р 12 37 62Р / \Р 29 70

收藏

分享

举报
下载此文档