本学期所有数据结构的大作业一,设A与B分别为两个带有头结点的有序循环链表(所谓有序是指链接点按数据域值大小链接,本题不妨设按数据域值从小到大排列),list1和list2分别为指向两个链表的指针。请写出将这两个链表合并为一个带头结点的有序循环链表的算法。二,本次实验的题目为表达式求值,要求设计一个程序,演示用算符优先法对算术表达式求值的过程。 即编写程序把前缀表达式转换成后缀表达式,并计算结果。用以下三组数据测试程序: 3*(7-2); 2*(6+2*(3+6*(6+6)))+(6+6)*3+2; 8/(9-9)。三,用三元组存储稀疏矩阵,并实现稀疏矩阵的转置,两个稀疏矩阵和与积的运算四,哈夫曼编/译码器 完成Huffman 编码的译码过程。即输入一个码串,请翻译成相应的字符串。要求有编码过程和解码过程。
标签: 数据结构
上传时间: 2017-01-18
上传用户:shanml
数据结构程序,稀疏矩阵运算器,可进行矩阵的加,减,乘运算。运行无误!
上传时间: 2017-02-13
上传用户:haohaoxuexi
数据结构课程设计,用一元稀疏矩阵的表示实现计算器
标签: 数据结构
上传时间: 2017-07-25
上传用户:四只眼
分析给出浮点、定点的基本运算舍入误差问题,以及在基本变换、线性方程组、稀疏矩阵还有不断试错,快速迭代过程中必须注意避免的舍入误差问题。
标签: 误差分析
上传时间: 2018-11-23
上传用户:milo
#include <stdio.h> #include <stdlib.h> #define SMAX 100 typedef struct SPNode { int i,j,v; }SPNode; struct sparmatrix { int rows,cols,terms; SPNode data [SMAX]; }; sparmatrix CreateSparmatrix() { sparmatrix A; printf("\n\t\t请输入稀疏矩阵的行数,列数和非零元素个数(用逗号隔开):"); scanf("%d,%d,%d",&A.cols,&A.terms); for(int n=0;n<=A.terms-1;n++) { printf("\n\t\t输入非零元素值(格式:行号,列号,值):"); scanf("%d,%d,%d",&A.data[n].i,&A.data[n].j,&A.data[n].v); } return A; } void ShowSparmatrix(sparmatrix A) { int k; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { k=0; for(int n=0;n<=A.terms-1;n++) { if((A.data[n].i-1==x)&&(A.data[n].j-1==y)) { printf("%8d",A.data[n].v); k=1; } } if(k==0) printf("%8d",k); } printf("\n\t\t"); } } void sumsparmatrix(sparmatrix A) { SPNode *p; p=(SPNode*)malloc(sizeof(SPNode)); p->v=0; int k; k=0; printf("\n\t\t"); for(int x=0;x<=A.rows-1;x++) { for(int y=0;y<=A.cols-1;y++) { for(int n=0;n<=A.terms;n++) { if((A.data[n].i==x)&&(A.data[n].j==y)&&(x==y)) { p->v=p->v+A.data[n].v; k=1; } } } printf("\n\t\t"); } if(k==1) printf("\n\t\t对角线元素的和::%d\n",p->v); else printf("\n\t\t对角线元素的和为::0"); } int main() { int ch=1,choice; struct sparmatrix A; A.terms=0; while(ch) { printf("\n"); printf("\n\t\t 稀疏矩阵的三元组系统 "); printf("\n\t\t*********************************"); printf("\n\t\t 1------------创建 "); printf("\n\t\t 2------------显示 "); printf("\n\t\t 3------------求对角线元素和"); printf("\n\t\t 4------------返回 "); printf("\n\t\t*********************************"); printf("\n\t\t请选择菜单号(0-3):"); scanf("%d",&choice); switch(choice) { case 1: A=CreateSparmatrix(); break; case 2: ShowSparmatrix(A); break; case 3: SumSparmatrix(A); break; default: system("cls"); printf("\n\t\t输入错误!请重新输入!\n"); break; } if (choice==1||choice==2||choice==3) { printf("\n\t\t"); system("pause"); system("cls"); } else system("cls"); } }
上传时间: 2020-06-11
上传用户:ccccy
求解大型稀疏方程组的全选主元高斯-约当消去法--返回零表示原方程组的系数矩阵奇异,返回的标志值不为零,则表示正常返回。
上传时间: 2015-03-14
上传用户:kernaling
计算矩阵连乘积 问题描述 在科学计算中经常要计算矩阵的乘积。矩阵A和B可乘的条件是矩阵A的列数等于矩阵B的行数。若A是一个p×q的矩阵,B是一个q×r的矩阵,则其乘积C=AB是一个p×r的矩阵。
上传时间: 2015-03-25
上传用户:yulg
gen_H:利用随机pi矩阵排列而成的LDPC稀疏校验矩阵产生; girthlenth:计算产生的矩阵H的围长
标签: girthlenth gen_H LDPC 矩阵
上传时间: 2014-06-08
上传用户:zhuimenghuadie
确定计算矩阵连乘积的计算次序,使得依此次序计算矩阵连乘积需要的数乘次数最少。具有完整的源程序及实验报告
上传时间: 2015-06-12
上传用户:yuchunhai1990
1.大型稀疏线性方程组的求解 A*X=b 。 2. 一维数组冒泡法排序算法 4.矩阵求逆 5. 改进的牛顿算法——弦割法
上传时间: 2015-10-29
上传用户:asddsd