一个应用型的软件产品,它包括业务逻辑,存储,策略。
描述它们之间的关系是:业务逻辑通过数据的存储和策略来支撑。
存储的含义:从数据结构到大型数据库
策略的含义:从算法到策略(如调度策略,搜索策略等)
业务逻辑的含义:表示特定行业产品的功能点
整个产品的产生过程,是通过软件工程来控制和实施
这个里面提到了软件设计中两个重要的部分:数据结构和算法设计
数据结构与算法也有关系的,数据结构是为了简化算法的实现而设计的。所以可以说软件设计中的最重要 的还是算法设计。
算法也是存在一定的设计技巧
常见的设计的技巧包括:迭代,递归,回溯,穷举,动态规划等。
算法也是分类型的
常见的类型包括:排序类(快排,插入等),搜索类(二叉平衡,B树,哈希等),调度类(LRU,FIFO,多级反馈,银行家算法等),压缩类(哈夫曼等),加密类(md5等)等
辅助算法的实现的常见数据结构包括:图,树,堆/栈,哈希表等
算法设计的考虑,还是要考虑问题的特征和算法的特征,来确定算法和数据结构的设计
阅读(834) | 评论(0) | 转发(0) |