下三角矩阵
设有一个 10 阶的下三角矩阵 A (包括对角线),按照从上到下、从左到右的顺序存储到连续的 55 个存储单元中,每个数组元素占 1
个字节的存储空间,则 A[5][4] 地址与 A[0][0] 的地址之差为( )。
下三角矩阵如图所示。如果A[0][0]的位置是1的话,不难理解A[5][4]的位置是:1+2+3+4+5+5 = 20。地址差为19。
算术表达式
算术表达式有三种类型

中缀表达式 1 + 2 * 3:运算符位于操作数中间
中缀表达式的运算规则:“先乘除,后加减,从左到右计算,先括号内,后括号外”
因此,中缀表达式不仅要依赖运算符优先级,而且还要处理括号
后缀表达式 1 2 3 * +:运算符在操作数的后面
已考虑了运算符的优先级
没有括号
只有操作数和运算符,而且越放在前面的运算符来越优先执行
前缀表达式 + 1 * 2 3:运算符位于操作数前面
我们平常使用的是中缀表达式,但后缀表达式非常好,运算的优先已经好了,所以我们用后缀表达式计算
排列组合
字符串 “YONYOU”,有几种不同的全排列方式?
六个字符,6!=6x5x4x3x2x1;由于有两个重复字符,每个除以2
6!/2*2 =180
字符串”qiniu”根据顺序不同有多少种排列组合的方式?
5个字符,5!=5x4x3x2x1; 由于有一个重复字符,除以2
5!/2 = 60
若串S=′software′,其子串的数目是()
答案是37
字串: n(n+1)/2 + 1
非空子串:n(n+1)/2
非空真子串:n(n+1)/2 - 1
本文介绍了数据结构中下三角矩阵的存储方式和地址计算,探讨了算术表达式,包括中缀、后缀和前缀表达式的概念,以及排列组合在计算字符串全排列中的应用。例如,对于字符串'YONYOU'和'qiniu',分别计算了全排列的数量,并给出了一般情况下的公式。

被折叠的 条评论
为什么被折叠?



