【数据结构】揭开面纱(摘抄)
学习背景 1976年瑞士计算机科学家Niklaus Wirth曾提出一个著名公式:Algorithm+Data Structures=Programs(算法+数据结构=程序),并以此为书名写了一本书。他本人也于1984 年获得了图灵奖,是瑞士学者中唯一获此殊荣的人。 数据结构基本认识 数据结构是计算机组织数据和存储数据的方式。更进一步地说,数据结构是指一组相互之间存在一种或多种特定关系的数据的组织方式和它们在计算机内的存储方式,以及定义在该组数据上的一组操作。合理的数据结构可降低程序设计的复杂性,提高程序执行的效率。关系图: 数据:所有被计算机存储、处理的对象。如字符串、图像、声音等。 数据元素:数据的基本单元,在程序中作为一个整体而加以考虑和处理。 数据项:被称为字段或者域,是数据的不可分割的最小标识单位。 数据、数据元素和数据项实际上反映了数据组织的三个层次,数据可由若干个数据元素组成,而数据元素又可由若干个数据项组成。 解决问题 计算机解决一个具体的问题时,一般需要经过以下几个步骤: 举个栗子实际问题:我们要将十个数从小到大排序,这十个数为:3,7,4,2,9,0,1,5,6,8。
数学模型:对于一组数据,我们可以用数组的形式将其组织起来,通过排序算法对数组中的值进行从小到大排序。
计算机程序实现:数组采用顺序存储结构来存储数据元素。
int i,j,k,temp;
int[] a = { 3,7,4,2,9,0,1,5,6,8 };
for (i = 0; i < 10; i++)
{
for (j = 0; j < 9 - i; j++)
{
if (a[j] > a[j + 1])
{
temp = a[j];
a[j] = a[j + 1];
a[j + 1] = temp;
}
}
}
for (int k = 0; k < 10; k++)
{
lblBubble.Text += a[k].ToString() + ",";
}
小结一种数据结构包括三方面的内容,即逻辑结构、对数据的操作(基本运算的集合)以及数据的存储结构。线性表、栈和队列中的元素具有相同的逻辑结构(即线性结构),但有不同的运算集,它们是不同的数据结构。(以上内容,如有不当之处,敬请斧正。) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |