C语言是国际上广泛使用的一种计算机语言,它适合作为系统描述语言,既可以用来编写系统软件,又可以用来编写应用软件。C语言从发布之日起就得到了广泛传播,为大多数程序员所接受,C语言使用率也一直在编程语言排行榜中稳居前三位,因此学习C语言前景也是非常可观的。
一个程序通常包含算法、数据结构、程序设计方法及语言工具和环境4个方面,其中,算法是核心,算法就是解决“做什么”和“如何做”的问题。算法与程序设计以及数据结构密切相关,是解决一个问题的完整的步骤描述,是解决问题的策略、规则、方法,是求解特定问题的一组有限的 *** 作序列。比如建造一栋楼之前,要先在图纸上绘出其构造图,算法就是在编写程序前先整理出基本思路。算法的描述形式有很多种,如传统流程图、结构化流程图及计算机程序语言等。
一个程序应该包括对数据的描述和对数据的 *** 作。其中,对数据的描述是指在程序中要指定数据结构,即数据的类型和数据的组织形式;对数据的 *** 作也就是对数据进行 *** 作的步骤,即算法。 著名的计算机科学家沃思(Nikiklaus Wirth)曾经提出过一个公式: 算法+数据结构=程序 随着时代的发展以及计算机技术的进步,这个公式已经不够准确了。
实际上,一个程序还应该包括采用一种程序设计方法进行程序设计并用计算机语言描述,经常采用的是结构化的程序设计方法。
算法一般可以分为两大类,一类是解决科学与工程计算方面的算法,如求解数值积分、微分方程、线性方程组和代数方程等,这类算法称为数值运算算法;另一类是解决数据处理方面问题的算法,称为非数值运算算法,如各种各样的查找算法、排序算法以及遍历算法等。目前,计算机在非数值运算方面的应用远远超过了在数值运算方面的应用。
程序设计语言(以 C 语言为例)通常包括的算法大致可以粗分为两类:排序和搜索算法。在排序算法中,通常冒泡排序是最简单的,但是对于大规模的大数据来说,该排序算法明显是不可行的。其它的排序算法还有:归并排序、SHELL排序、快速排序等。搜索算法有顺序搜索、以及二分搜索,等等。欢迎分享,转载请注明来源:内存溢出
评论列表(0条)