通用数据结构和算法的正式定义

C. Welborn, George Rudolph
{"title":"通用数据结构和算法的正式定义","authors":"C. Welborn, George Rudolph","doi":"10.1109/IETC47856.2020.9249213","DOIUrl":null,"url":null,"abstract":"Data Structures and algorithms are core topics taught in all Computer Science degrees. Yet for all the commonality in teaching these topics there is no universally accepted method for presenting the material. Some faculty and students will prefer a more graphical presentation with accompany lecture, others will prefer a more textual approach with pseudo-code, others will use a combination of both. While any of these approaches can be effective they all suffer from the same two problems 1) neither has formally defined what the students specifically needs to do to implement a data structure or algorithm, 2) neither can be used by the student to verify that what they have implemented is correct. By writing Prolog for common data structures and algorithms, we can avoid these problems because Prolog provides us with a formal language for specifying a definition and once written the definition can be executed in the form of a proof to show how the data structure or algorithm should perform under various conditions.","PeriodicalId":186446,"journal":{"name":"2020 Intermountain Engineering, Technology and Computing (IETC)","volume":"277 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2020-10-02","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":"{\"title\":\"Formal Definitions for Common Data Structures and Algorithms\",\"authors\":\"C. Welborn, George Rudolph\",\"doi\":\"10.1109/IETC47856.2020.9249213\",\"DOIUrl\":null,\"url\":null,\"abstract\":\"Data Structures and algorithms are core topics taught in all Computer Science degrees. Yet for all the commonality in teaching these topics there is no universally accepted method for presenting the material. Some faculty and students will prefer a more graphical presentation with accompany lecture, others will prefer a more textual approach with pseudo-code, others will use a combination of both. While any of these approaches can be effective they all suffer from the same two problems 1) neither has formally defined what the students specifically needs to do to implement a data structure or algorithm, 2) neither can be used by the student to verify that what they have implemented is correct. By writing Prolog for common data structures and algorithms, we can avoid these problems because Prolog provides us with a formal language for specifying a definition and once written the definition can be executed in the form of a proof to show how the data structure or algorithm should perform under various conditions.\",\"PeriodicalId\":186446,\"journal\":{\"name\":\"2020 Intermountain Engineering, Technology and Computing (IETC)\",\"volume\":\"277 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2020-10-02\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"0\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2020 Intermountain Engineering, Technology and Computing (IETC)\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/IETC47856.2020.9249213\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 Intermountain Engineering, Technology and Computing (IETC)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IETC47856.2020.9249213","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0

摘要

数据结构和算法是所有计算机科学学位课程的核心主题。然而,在教学这些主题的所有共同点,没有普遍接受的方法来呈现材料。有些教师和学生更喜欢在讲课时使用更图形化的演示,有些人更喜欢使用伪代码的文本方式,有些人则会将两者结合使用。虽然这些方法中的任何一种都是有效的,但它们都面临着同样的两个问题:1)它们都没有正式定义学生具体需要做什么来实现数据结构或算法;2)它们都不能被学生用来验证他们所实现的是正确的。通过为常见的数据结构和算法编写Prolog,我们可以避免这些问题,因为Prolog为我们提供了一种指定定义的形式语言,并且一旦写好定义就可以以证明的形式执行,以显示数据结构或算法在各种条件下应该如何执行。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
Formal Definitions for Common Data Structures and Algorithms
Data Structures and algorithms are core topics taught in all Computer Science degrees. Yet for all the commonality in teaching these topics there is no universally accepted method for presenting the material. Some faculty and students will prefer a more graphical presentation with accompany lecture, others will prefer a more textual approach with pseudo-code, others will use a combination of both. While any of these approaches can be effective they all suffer from the same two problems 1) neither has formally defined what the students specifically needs to do to implement a data structure or algorithm, 2) neither can be used by the student to verify that what they have implemented is correct. By writing Prolog for common data structures and algorithms, we can avoid these problems because Prolog provides us with a formal language for specifying a definition and once written the definition can be executed in the form of a proof to show how the data structure or algorithm should perform under various conditions.
求助全文
通过发布文献求助,成功后即可免费获取论文全文。 去求助
来源期刊
自引率
0.00%
发文量
0
期刊最新文献
Virtual Reality Training in Electric Utility Sector - An Underground Application Study Case Different assignments as different contexts: predictors across assignments and outcome measures in CS1 2020 Intermountain Engineering, Technology and Computing (IETC) Micromachining of Silicon Carbide using Wire Electrical Discharge Machining Stereophonic Frequency Modulation using MATLAB: An Undergraduate Research Project
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1