# 数据结构第四-五章 **Repository Path**: wohanjiya/data-structures-chapters-4-5 ## Basic Information - **Project Name**: 数据结构第四-五章 - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-04 - **Last Updated**: 2025-11-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 【上机作业】第四/五章:串、数组与广义表 ## 基本信息 - **截止时间**:2025年11月17日 23:59 - **允许迟交**:是 - **允许申请重做**:是 --- ## 📖 作业内容 ### 【必做题】 #### 1. 串的操作实现 **要求**: - 建立目标串 `s` 和模式串 `t`(可任意输入,示例:`s = "abcabcdbacaedbcdfebacdefg"`,`t = "bacaedbcdfeba"`) - 采用**简单匹配算法**求 `t` 在 `s` 中的位置 - 采用**改进的KMP算法**求 `t` 在 `s` 中的位置 #### 2. 数组的基本操作与稀疏矩阵 **要求**: - 实现数组的顺序存储及以下基本操作: - `InitArray()`:初始化数组 - `DestoryArray()`:销毁数组 - `Value()`:获取数组元素值 - `Assign()`:赋值给数组元素 - 实现稀疏矩阵的两种存储表示: - **三元组顺序表** - **十字链表** - 实现**矩阵的转置**操作 --- ### 【附加题】 #### 1. 字符统计程序 **要求**: - 输入任意字符串 - 输出字符串中出现的字符及其出现次数 - 字符输出顺序按照其在字符串中**首次出现顺序**排列 **示例**: ``` 输入:acbacc 输出: a 2 c 3 b 1 ``` #### 2. 稀疏矩阵乘积运算 **要求**: - 采用**行逻辑链接存储表示** - 实现稀疏矩阵的乘积运算 --- ## 📤 作业提交要求 请将以下内容打包提交: 1. **所有练习相关的源码** 2. **可执行程序** 3. **输出结果截图**(保存在一个Word文档中) --- ## 📝 注意事项 - 确保代码可编译、可运行 - 输出结果需清晰可见 - 附加题为选做,但建议完成以提升能力 如有问题,请及时联系指导老师。