python用递归法实现二分法查找 有哪些比较基础的计算机书籍?

[更新]
·
·
分类:互联网
3014 阅读

python用递归法实现二分法查找

有哪些比较基础的计算机书籍?

有哪些比较基础的计算机书籍?

根据你学习的目的有不同的推荐。
1.如果只是想使用操作计算机,建议学习一些计算机操作基础之类的书籍配合实机训练,学完后会掌握计算机的基本操作及一些基本软件的使用。
2.如果想进一步学习编程,在学习以上第一点的基础之上再学习一些计算机专业的基础课程书籍。
软件必学:计算机操作系统,离散数学,数据库基础,数据结构,编译原理,计算机网络,高级语言程序设计(java)
硬件必学:计算机系统结构,汇编语言,单片机等。

二叉树的查询效率为什么比链表高?

这里的二叉树是指二叉排序树。二叉树也是常用的数据结构。一棵二叉树由根节点(可以为空)和左右子树(也是二叉树)构成。
通常情况下,二叉树的效率比线性链表高,因为二叉树上的查询、插入等操作即相当于二分法操作,时间复杂度为 O ( log 2 N ) O(log_{2}{N}) O(log 2N)。但二叉树也很容易失衡,极端情况下将退化为线性链表。
二叉树用递归定义,其上的操作基本也是基于递归定义的。编程比较方便。
1、遍历。二叉树上的遍历分为前序、中序和后序遍历。本文只讨论中序遍历。
2、搜索。二叉树的天生优势就在于搜索。相当于二分法查询。效率比较高。
3、插入。在二叉树的合适位置插入节点。当然,插入后必须仍然是二叉排序树。
4、删除。节点的删除是二叉树操作中比较难一点的。难点在于删除节点后新节点的选取以及要保持该数据结构仍然是二叉排序树。