数据结构学习指南与习题解析

需积分: 1 0 下载量 120 浏览量 更新于2024-07-29 收藏 1.97MB DOC 举报
"exercise_txy数据结构学习指导" 数据结构是计算机科学中至关重要的一部分,它主要研究如何有效地组织、存储和处理数据,以便于在计算机中高效地进行各种操作。本学习指导涵盖了数据结构的主要概念、术语及算法设计,旨在帮助学习者深入理解和应用这些基础知识。 在第1章概述中,介绍了数据结构的研究目的,即提高数据处理的效率和程序的性能。研究内容包括数据元素、数据对象、数据结构、逻辑结构和存储结构等。其中,数据结构不仅包含数据元素本身,还涉及它们之间的相互关系。数据元素是构成数据的基本单位,可以是单一的值或者由多个数据项组成。数据对象则是具有相同特性的数据元素的集合。 数据结构的两个核心概念是逻辑结构和存储结构。逻辑结构关注的是数据元素之间的逻辑关系,如集合、线性结构、树型结构和图型结构。而存储结构则涉及到这些逻辑结构在内存中的实际布局,如顺序存储、链式存储、索引存储等。理解这两种结构的区别和联系对于设计高效的算法至关重要。 此外,数据类型和抽象数据类型也是数据结构中的关键概念。数据类型定义了一组具有相同性质的数据和一组操作,而抽象数据类型更加强调数据的操作和行为,它是对现实世界问题的一种数学建模。算法则是在数据结构基础上设计的,用于解决问题的一系列步骤,其好坏往往通过算法复杂度来衡量,包括时间复杂度和空间复杂度。 接下来的章节深入讲解了具体的数据结构类型,包括: 1. 线性表:线性结构中最基础的类型,数据元素之间一对一的关系,如数组和链表。 2. 串:由字符组成的特殊线性表,字符串处理是其典型应用。 3. 数组和广义表:数组是一维或多维的线性结构,广义表则允许元素是列表,具有更大的灵活性。 4. 树:数据元素呈现层级关系,如二叉树、堆、AVL树和红黑树等。 5. 图:数据元素之间多对多的关系,涵盖了图的遍历、最短路径等问题。 6. 查找:在数据集合中寻找特定元素的方法,如顺序查找、二分查找和哈希查找。 7. 内部排序:在内存中进行的排序操作,包括冒泡排序、选择排序、快速排序、归并排序等。 每章都包含了讲课提要、学习指导和习题,目的是帮助学习者通过实践加深对每个主题的理解。习题和参考答案提供了检验学习效果和提升技能的机会。 这份“exercise_txy数据结构学习指导”是一份全面且深入的教程,适合初学者和进阶者系统学习数据结构,以提高编程能力和算法设计能力。通过学习,不仅可以掌握基础理论,还能提升解决实际问题的能力。

File "/root/Desktop/EAST-master/multigpu_train.py", line 180, in <module> tf.app.run() File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/tensorflow_core/python/platform/app.py", line 40, in run _run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef) File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/absl/app.py", line 312, in run _run_main(main, args) File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/absl/app.py", line 258, in _run_main sys.exit(main(argv)) File "/root/Desktop/EAST-master/multigpu_train.py", line 110, in main total_loss, model_loss = tower_loss(iis, isms, igms, itms, reuse_variables) File "/root/Desktop/EAST-master/multigpu_train.py", line 30, in tower_loss f_score, f_geometry = model.model(images, is_training=True) File "/root/Desktop/EAST-master/model.py", line 77, in model spp_output = spp_layer(f[0]) File "/root/Desktop/EAST-master/model.py", line 44, in spp_layer strides=[1, strides[0], strides[1], 1], padding='VALID') File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/tensorflow_core/python/ops/nn_ops.py", line 3815, in max_pool name=name) File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/tensorflow_core/python/ops/gen_nn_ops.py", line 5662, in max_pool ksize = [_execute.make_int(_i, "ksize") for _i in ksize] File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/tensorflow_core/python/ops/gen_nn_ops.py", line 5662, in <listcomp> ksize = [_execute.make_int(_i, "ksize") for _i in ksize] File "/root/miniconda3/envs/txy2/lib/python3.7/site-packages/tensorflow_core/python/eager/execute.py", line 169, in make_int (arg_name, repr(v))) TypeError: Expected int for argument 'ksize' not <tf.Tensor 'model_0/feature_fusion/SpatialPyramidPooling/strided_slice_2:0' shape=() dtype=int32>. Process finished with exit code 1

2023-05-29 上传