构建之法阅读笔记01 一开始,书中就给出了一个观念,软件应该是程序的放大版,程序是一行行的代码,而一个复杂的软件不但要有合理的架构、软件设计与实现,还要有各种文件和数据来描述各个程序文件之间的依赖关系等等,这些都是构建的过程。程序(算法、数据结构)是基本功,在算法和数据结构之上,软件工程决定了软件的 ...
分类:
其他好文 时间:
2017-07-03 16:23:57
阅读次数:
113
数据结构与算法 数据结构与算法 什么是数据结构? 指数据元素之间的关系。这些关系可以分为: 集合 线性结构 树形结构 网状结构。 逻辑结构分为: 线性结构 和 非线性结构。 集合:除了同属一个对象外不存在相互关系。如:汽车上的人除了同辆车彼此间无其他关系。 线性结构:元素间为严格的一对一关系,即一个 ...
分类:
编程语言 时间:
2017-06-29 19:26:01
阅读次数:
283
数据结构的定义: 把现实中大量而复杂的问题以特定的数据类型和特定的存储结构保存到主存储器中(内存),以及在此基础上实现的某个功能(查找、删除某个元素,对所有元素排序)而执行的相应操作,这个相应的操作也叫做算法。 数据结构=个体+个体的关系 算法=对存储数据的操作 算法的定义: 解题的步骤和方法 衡量 ...
分类:
编程语言 时间:
2017-06-27 01:05:13
阅读次数:
170
程序设计 = 数据结构 + 算法 数据结构的一些相关概念: 数据结构的定义:数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 数据结构的分类: 逻辑结构是面向问题的。而物理结构是面向计算机的。其主要的目标就是将数据及其逻辑关系存储到计算机的内存中。 数据类型(以C语言为例)分为原子类型(整 ...
分类:
其他好文 时间:
2017-06-21 16:03:02
阅读次数:
182
给定公司NN名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。 输入格式: 输入首先给出正整数NN(\le 10^5≤10?5??),即员工总人数;随后给出NN个整数,即每个员工的工龄,范围在[0, 50]。 输出格式: 按工龄的递增顺序输出每个工龄的员工个数,格式为:“工龄:人数”。每项占一行 ...
分类:
编程语言 时间:
2017-06-20 11:05:56
阅读次数:
226
"四染色"问题:用不多于四种颜色对地图着色,使相邻的区域不重色。 算法思想:从第一个区域开始染色,每一个区域依次用颜色1,2,3,4进行试探,如果当前所试探的颜色与周围区域都不同色,则用栈记录该区域色数,否则用下一色数继续试探;如果四种颜色都与相邻区域重色,那么需要退栈,修改栈顶色数,即更改上一区域 ...
分类:
编程语言 时间:
2017-06-18 18:58:04
阅读次数:
207
构建之法阅读笔记01 发布日期:2017.6.16 1.1节通过3个简短的对话和一个生活实例,启发我对什么是程序,什么是软件,什么是软件工程,没有使用到算法需不需要学习、掌握,软件和算法,数据结构有无关联等问题的思考。仔细想想发现自己对这些概念模糊,毫无理解。通过继续往下看,我才渐渐的明白了一行行的 ...
分类:
其他好文 时间:
2017-06-16 23:13:57
阅读次数:
237
构建之法阅读笔记01 2017.2.28 一开始,书中就给出了一个观念,软件应该是程序的放大版,程序是一行行的代码,而一个复杂的软件不但要有合理的架构、软件设计与实现,还要有各种文件和数据来描述各个程序文件之间的依赖关系等等,这些都是构建的过程。程序(算法、数据结构)是基本功,在算法和数据结构之上, ...
分类:
其他好文 时间:
2017-06-15 23:41:00
阅读次数:
157
排序:插入排序:每次从剩余数据中选取一个最小的,插入已经排序完成的序列中合并排序:将数据分成左右两组分别排序,然后合并,对每组数据的排序递归处理。冒泡排序:重复交换两个相邻元素,从a[1]开始向a[0]方向冒泡,然后a[2]...当a[i]无法继续往前挤的时候说明前面的更小了..
分类:
编程语言 时间:
2017-05-26 23:32:05
阅读次数:
263
Linux的程序包管理:程序:指令+数据程序:算法+数据结构应用程序的存在形式:1.源代码:包含了整个应用程序的编程语言的所有代码的文本文件;2.二进制:将源代码经过一系列的转换操作之后得到的可以直接执行的文件使用源代码安装应用程序:预处理(预处理器)-->编译(编译器)..
分类:
其他好文 时间:
2017-05-19 22:19:49
阅读次数:
263