数据结构一元多项式求导_【学习分享】数据结构与算法例题讲解

3170c741089df0d2f9b747b462e49734.png

国庆八天长假刚结束,2019级卓越班的同学们立刻进入了学习的状态,于2020年10月9日下午成功举行了第三次知识分享会。杨一达,于志强,王彤瑶三位同学为我们带来了《数据结构与算法》中经典例题的讲解,并分享了他们在各自完成过程中所积累的经验。

5a024ff7b8deea6e7f0bf7101048b143.gif 5d4414f70e10acfef5244f75c9d7af4b.png 703d8eda62be7b598056a6205dc81205.png abe08dbb190fcdd4d3c10a907ff58232.gif

1.约瑟夫环问题

杨一达同学为我们讲解第一个问题——约瑟夫环。第一种方法使用单向循环链表,第二种方法使用双向循环链表。在第一种方法中,需要注意的是,在链表创建完成之后,应该返回的是最后一个结点的地址,这样方便后面的操作。在第二种方法里结构体中多出了一个指向前一个结点的指针,和一个表示方向的变量direction,0代表逆向,1代表正向。第二种方法的难点在于双向循环链表的创建与删除,删除必须把握好连接的顺序,否则会造成空指针异常。

2eaf87d30009c91bde3e20ccc794b167.png f812d22c3a8ae8f234ed8d38379879f9.png 41bac5f324fd331609601aadef655e99.png

2.一元多项式计算

第二个问题是一元多项式的计算。在这道题目中,王彤瑶同学使用单向链表来解决一元多项式加法、减法、求导、乘法和求值运算。计算Pa、Pb两个多项式相加时,用Pc来存放其和,令qa、qb、qc分别指向单链表Pa、Pb和Pc的当前项。若qa所指向的节点的指数小于qb的,则将qa复制到qc中,令指针qa后移;若qa所指向的节点的指数等于qb的,则将qa的系数域与qb的系数域的和作为qc的系数域,qa、qb后移;若qa所指向节点的系数大于qb所指向节点的系数,则将qb复制到qc中,令指针qc后移。做减法计算时可以将减数Pb中的系数变为其相反数然后与Pa相加。在乘法计算中,将Pb看做一个整体,让Pa的每一项乘以Pb得到若干个多项式,再将他们相加。

beedf2e3c0e6538d6b2a247eebc6f22b.png 5a024ff7b8deea6e7f0bf7101048b143.gif

3.表达式求值

最后一个问题是表达式求值。于志强同学所讲的表达式求值问题,可以在有括号的情况下进行加减乘除。首先利用一个结构体数组将运算符及其优先级存储起来,然后定义两个栈进行数字和运算符的存储。当遇到数字压入数字栈,遇到运算符则与运算符栈顶元素比较优先级,如果大于栈顶元素则入栈,否则弹出栈顶运算符进行运算,直到表达式字符串结束。

在分享过程中我们可以看到其他同学对于问题的求解思路,学习他人解决问题的方法,再比较自身,不断优化自己的程序,这也是我们提高自己代码质量的一个很好的途径。

知识的分享是学习的一种重要的方式,卓越班的分享会在进行课外的拓展与延申的同时,还密切关注着同学们在课堂上的热点与难点,并及时的通过知识分享帮助同学们更好的解决并理解这些问题。不要让想法停留在脑海,不要把问题停留心中,就在此刻努力,在未来一定能遇见更好的自己。

51ee057c7a21084d0aa4e4a892d98457.gif 41542380cbe85287cb85f4bcf911330e.png

编       辑:王彤瑶

审       核:王世睿 曹永强

责任编辑:张子恒

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值