# Data_Structure_Projects **Repository Path**: xiaoni_61/Data_Structure_Projects ## Basic Information - **Project Name**: Data_Structure_Projects - **Description**: 该仓库用于收集数据结构上机作业 - **Primary Language**: C++ - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 46 - **Created**: 2020-04-22 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Data_Structure_Projects #### 介绍 该仓库用于收集数据结构上机作业 #### 说明 学生需要将作业的代码提交到指定的题目文件夹中 ## 目录 ## **1.1** 设有n个人围坐在一个圆桌周围,现从第s个人开始报数,数到第m的人出列,然后从出列的下一个人重新开始报数,数到m的人又出列,如此重复,直到所有的人全部出列为止。Josephus问题是:对于任意给定的n,s,m,求出按出列次序得到的n个人员的序列。 **1.2** 设有n个人围坐在一个圆桌周围,现从第s个人开始报数,数到第m的人出列,然后从出列的下一个人重新开始报数,数到m的人又出列,如此重复,直到所有的人全部出列为止。Josephus问题是:对于任意给定的n,s,m,求出按出列次序得到的n个人员的序列。 **2.1** 实现表达式求值算法: (1)输入一个中缀表达式; (2)将其转为后缀表达式,并显示出来; (3)将该后缀表达式进行求值 **3.1** 表达式可以用表达式二叉树来表示。对于简单的四则运算表达式,请实现以下功能: (1)对于任意给出的前缀表达式(不带括号)、中缀表达式(可带括号)或后缀表达式(不带括号),能够在计算机内部构造出一棵表达式二叉树,并且以图示显示出来(字符图或图形的形式)。 (2)对于构造好的内部表达式二叉树,按照用户的要求,输出相应的前缀表达式(不带括号)、中缀表达式(可以带括号,但不允许冗余括号)或后缀表达式(不带括号)。 **3.2** 完成根据教材P128代码5.12建立Huffman编码树的源代码,包括计算各个字母对应代码的函数以及对信息进行编码与解码的函数。对于给定输入的字符串,输出Huffman编码。 **4.1** 根据教材P181 【算法7.8】Dijkstra算法,求源点(默认为0)到其它顶点(1,2,3,4,5,6···)的最短路径。 **4.2** 根据教材P186 【算法7.10】Prim算法,求最小生成树。 **5.1** 实现快速排序算法。 **5.2** 实现堆排序算法。 **5.3** 实现归并排序算法。