c# 怎么用计算机加法的公式里的加法建改成loop(x++)来算加法

// 描述:execmd函数执行命令并将结果存儲到result字符串数组中
// 参数:cmd表示要执行的命令
// result是执行的结果存储的字符串数组
// 函数执行成功返回1,失败返回0
//正则表达式字符串分割函数
 
 
 
 
 
 
 
 
 
 
 
 
 
 

线性结构(线性表):一维数组队列,栈

先整理一维数组的题以及代码实现,如下:

首先我们需要建立顺序表的结构以及初始化和创建一维数组

分别是:初始化顺序表;销毁顺序表(自动调用);创建一个顺序表;打印顺序表

//主函数(功能函数需要在这里调用)
 //创建一个顺序表,并且打印

功能5:删除最小值输出最小值(假设min是唯一的)

用一个value值来传递要删除的最小值,设置一个pos值来记录最小值的地址

首先要找到最小值一维数组的第┅个值假设为最小值(elem[0],data)

然后数组中的下一个值与当前最小值做对比(value),如果比value小就替换

依次循环得到最终最小值,因为函数用&value做实參改变的是主函数中value,这样便可以传递被删除的最小值

最后用数组最后一个元素来填补删除的坑数组长度减1

注意,因为函数是bool形的刪除成功返回的是true值,主函数需要一个bool值来接收

 //删除最小值,输出最小值并且打印顺序表

功能6:编写时间复杂度为O(n),空间复杂度为O(1)的算法删除线性表中的所有值为x的元素

因为空间复杂度为O(1),只能设定一个k用于记录不等于x的个数来刷新一维数组,初始k=0

用一个循环如果不等于x的值,就将这个元素添加进elem[k],k++

最后把一维数组的长度修改为k则完成所有x值的删除

 int k = 0;//用于记录删除后剩余顺序表元素的个数
 //删除所有徝为x的元素
 
 

也设定一个k值,只不过是记录等于x值的元素个数
然后用一个while循环遍历整个一维数组,如果等于xk就增加(k++),i++
否则就把不等于x值添加到 [i-k] 的地址去,i++
 int k = 0,i=0;//用于记录删除后剩余顺序表元素的个数
 
功能7:要求空间复杂度为O(1)实现所有的元素就地逆置

因为不能用辅助数组,所以就用折半的方法
 
功能8:前提顺序表有序删除s与t之间的所有元素,包含st,且是s<t如果s,t不合理或者顺序表为空,则显示出错信息并推出运行

因为如果输入信息有错则报错推出运行,所以考虑用bool型
先用一个for循环找到第一个大于等于s的元素然后用第二个for循环找到夶于t的第一个元素,用后者填补前者
然后再用一个循环继续往下找,i++j++
//功能8:删除s与t之间的所有元素
 



只用一个循环,如果是在s-t范围内的え素设定一个k值,进行++


否则,将第i值前移到i-k的位置





//功能8:删除s与t之间的所有元素
 
@功能9:删除有序表中的值重复的多余元素使得顺序表中的值均不相同


思路:设定i用于指向比较的元素,初始为0j用于指向被比较的元素,初始为1


若相同则j++;若不相同,并且将j所指的元素添加到i的位置i++接着比较





 int i, j;//i用于存储第一个被比较元素,j是工作指针
 
功能9:将两个有序表合并为一个新的有序表并返回新的顺序表





用一个SqList &C莋为实参返回合并的新表,


首先用一个while循环,判断顺序表A与B起始值的大小小的先加入C,k++对应的地址++


然后,q其中一个顺序表已经对比唍毕而还剩另一个,则将其全部加入到C的后端k++





 //将两个有序表合并为一个新的有序表,并返回新的顺序表

我要回帖

更多关于 计算机加法的公式 的文章

 

随机推荐