数据结构与算法
文章平均质量分 90
Xinspace
嵌入式,OS
展开
-
用栈实现括号匹配
括号匹配的意思假设只允许出现两种括号:圆括号和方括号,其嵌套顺序随意,即不管[([])]或[([])]等都为正确匹配,但是形如([][)就成为错误的匹配。实现的算法可以用“期待的紧急程度”的概念来描述:如 [([][])] 共8个括号,从左往右依次标代号为1-8,即第一个[代号为1,第二个(代号为2,第三个[代号为3,依次类推当计算机收到了第一个括号后,期待原创 2013-04-02 17:41:08 · 1645 阅读 · 0 评论 -
用线性表实现多个多项式相加
今天开始想复习一下数据结构,就从线性表开始吧。今天是用线性表实现多个多项式相加这个题目,自变量是x。题目描述如下:在数学上,一个一元多项式Pn(x)可按降幂写成:Pn(x) = pn x^n + p(n-1) x^n + ……. + p2x^2 + p1x^1 + p0,它由n+1个系数唯一确定。同样的Qn(x)也可以写成如P多项式一样。当两个多项式的某一项指数相同时,可将原创 2013-04-02 17:44:09 · 1673 阅读 · 0 评论 -
用栈实现简单的行编辑器
所谓简单的行编辑器,描述如下:接受用户从终端输入的程序或数据,并将最后结果显示到屏幕上。由于用户输入时,不能保证不出差错,因此,若在编辑程序中,“每接受一个字符即输出到屏幕上“的做法显然不恰当。较好的做法是,设立一个输入缓冲区,用以接受用户输入的一行字符,然后一次性将其显示到屏幕上。允许用户 输入出错并及时改正。以”#“表示退格,删除上一个字符。以”@“表示退行,删除一整行。例如接受如下两原创 2013-04-02 17:36:43 · 1615 阅读 · 0 评论 -
用栈实现数制转换
这个小程序现在只实现了十进制转N进制,N进制往十进制或者N进制之间相互转换还没有实现,等到以后补充。十进制转N进制的算法很简单,描述如下:变量dec表示十进制数,变量des表示转换成的目标N进制数,变量n表示要转换的N进制如dec=15, n=2, 则得到 des=1111转换步骤如下:1.用dec除以n得到商为s,余数为y;2.把s的值赋给dec,原创 2013-04-02 17:42:37 · 3331 阅读 · 0 评论