数据结构类型有哪几种(结构化半结构化非结构化)

数据结构类型?

数据元素相互之间的关系称为结构。有四类基本结构:集合、线性结构、树形结构、图状结构;

集合结构:除了同属于一种类型外,别无其它关系线性结构:元素之间存在一对一关系常见类型有: 数组,链表,队列,栈,它们之间在操作上有所区别.例如:链表可在任意位置插入或删除元素,而队列在队尾插入元素,队头删除元素,栈只能在栈顶进行插入,删除操作.树形结构:元素之间存在一对多关系,常见类型有:树(有许多特例:二叉树、平衡二叉树、查找树等)图形结构:元素之间存在多对多关系,图形结构中每个结点的前驱结点数和后续结点多个数可以任意。

结构化和非结构化是什么意思?

结构化:数据结构字段含义确定,清晰,典型的如数据库中的表结构。

半结构化:具有一定结构,但语义不够确定,典型的如HTML网页,有些字段是确定的(title),有些不确定(table)

非结构化:杂乱无章的数据,很难按照一个概念去进行抽取,无规律性

结构化程度是指对某一决策问题的决策过程、决策环境和规律,能否用明确的语言(数学的或逻辑学的、形式的或非形式的、定量的或定性的)给予说明或描述清晰程度或准确程度。按照决策问题的结构化程度不同把决策问题分成结构化问题、半结构化问题和非结构化问题三种类型。

1)结构化决策问题

结构化决策问题相对比较简单、直接,其决策过程,和决策方法有固定的规律可以遵循。能用明确的语言和模型加以描述,并可依据一定的通用模型和决策规则实现其决策过程的基本自动化。早期的多数管理信息系统,能够求解这类问题,例如,应用运筹学方法等求解资源优化问题。如:饲料配方、生产计划、调度等。

2)非结构化决策问题

非结构化决策问题是指那些决策过程复杂,其决策过程和决策方法没有固定的规律可以遵循。没有固定的决策规则和通用模型可依,决策者的主观行为(学识、经验、直觉、判断力、洞察力、个人偏好和决策风格等)对各阶段的决策效果有相当影响。往往是决策者根据掌握的情况和数据临时做出决定

数据结构的基本类型

数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。通常情况下,精心选择的数据结构可以带来更高的运行或者存储效率。数据结构往往同高效的检索算法和索引技术有关。

数据结构具体指同一类数据元素中,各元素之间的相互关系,包括三个组成成分,数据的逻辑结构,数据的存储结构和数据运算结构。

数据类型和数据结构的联系区别

区别:

1、数据结构:数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。一般来说数据结构指的都是结构化的东西,也就是说若干elements按照一定结构组成的;

2、数据类型:数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作。一般分为两种,基本数据类型和复杂数据类型。基本结构对应基本数据类型,复杂结构对应复杂数据。

关系:

数据结构等于数据元素加数据关系;数据类型等于数据结构加数据操作;数据类型的范畴是大于数据结构的。数据放在elements中,每个elements一般都是线性地址相连的存储,elements的类型叫数据类型,由elements组成的更复杂的结构叫做数据结构。

C语言数据结构类型定义的问题

在C语言中,结构体struct指的是一种数据结构,是C语言中聚合数据类型aggregate data type的一类。结构体可以被声明为变量、指针或数组等,用以实现较复杂的数据结构。结构体同时也是一些元素的集合,这些元素称为结构体的成员member,且这些成员可以为不同的类型,成员一般用名字访问。

链表是一种数据结构还是数据类型

链表这个词,既是一种数据结构,当你在数据结构与算法中讨论它的时候;也是一种数据类型,当你在某一种程序设计语言中讨论它的时候。

当它指一种数据结构的时候,他的结构是抽象的,大概描述了元素是有前后顺序的,可以遍历,但一般不可以随机访问。它通常有头,尾,而且可以快速的增删头尾。大概就是这样的结构了。这种操作也都是指在内存中的操作。

当它指一种数据类型的时候,通常是说的某种语言里面实现了链表这种数据结构对应的数据类型。比如C++中的 list,R中的list,Java中的ArrayList等等。不同语言的链表类型实现细节不同,提供的操作函数也不完全相同,有的甚至差别还挺大。具体要看这个语言实现的方式。

数据结构中关于抽象数据类型的题目,一定要私信回答我哦~~不私信不予采纳哦~~

  • 1、新教师的引进,老教师的退休,老师工作调动等是学校认识管理中常规业务,请设计一个学校人事管理的抽象数据类型来实现这一工作,请你根据抽象数据类型的定义及面向对象程序设计思想写出(1)教师的数据结构的定义(2)该抽象数据类型的定义2、在QQ聊天软件中,用户添加、删除好友,并可以管理好友和个人空间,参与其他好友空间的互动,请使用数据结构中的抽象类型来描述QQ软件的数据和数据操作;即从你的理解的角度,设计QQ软件的抽象数据类型这两个题目请大家私信给我哦~一定要私信呀~~我会及时回复的~然后会采用你的答案~保证你的答案不被别人抄袭~~~大神级别的回答会提高奖赏的~~各位大神们,事关期末考试成绩挂科与否~~小女纸在此谢过大家了问题补充: 已经将悬赏提到最高了~~大神,你在哪里?????
  • 如果私信的话就只有你一个人看的到,大神做的答案就不能让大家分享了。

为什么可以用抽象数据类型定义一个完整的数据结构

  • 抽象数据类型描述了数据的逻辑结构和抽象运算,通常可以用数据对象,数据关系,基本害厂愤断莅登缝券俯猾操作集这样的三元组来表示,从而构成了一个完整的数据结构定义。可是数据结构不是包括三方面内容,逻辑结构,存储结构,数据运算,抽象数据类型少了存储结构怎么能定义
  • 内容是定义的阐发而已。存储结构只有在计算机内才有意义,它不过是逻辑结构的映射而已,所以,把存储结构算上就是重复了,没有意义。逻辑结构包含数据对象,数据关系,数据运算包含数据对害厂愤断莅登缝券俯猾象,数据关系,基本操作集,它们不过是这三个元素的复合而已。就好比生产力构成要素,劳动者,劳动工具,劳动对象,然后将劳动工具和劳动对象归为劳动资料一样。

求大神:数据结构(抽象数据类型设计)

  • 利用GPS,搜索想去的位置,根据所在地,给出一条最优线路。如时间最短(1)需要哪些数据(2)采用什么数据结构组织 (3)主要数据结构的抽象数据类型定义
  • 大哥这个需要算法吧,看你用啥算法才能决定数据结构吧

数据结构我自己写基数排序时候出现表达式必须包含指针类型,求高手看看,谢谢!

  • #includestdio.h#includestdlib.htypedef struct node{int data;struct node *next;}point;typedef struct node1{point rear,front;}sun;void enqueue(sun *q,int e);int digit(int key,int i,int r);void delqueue(sun *u);int delqueue1(sun *t);int main(){int k;int r=10;int i,j;sun *q;int items[7]={32,11,21,32,43,3};q=(struct node1*)malloc(r*sizeof(point));for(i=0;i2;i++)for(j=0;j7;j++){k=digit(items[j],i,r);enqueue(&q[k],items[j]);items[7]=delqueue1(&q[j]);}for(j=0;jr;j++)delqueue(&q[j]);}int digit(int key,int i,int r){int d;if(i==0)return key%r;d=i;for(i=1;i=d;i++)d*=r;return(keyd%r);}void enqueue(sun *q,int e){point *p;p=(struct node*)malloc(sizeof(point));p-data=e;q-rear-next=p;问题就出现在这里了,说什么表达式必须包含指针类型!q-rear=p;}int delqueue1(sun *t){point *v;int items[7];int i=0;while(t-front!=t-rear){items[i]=v-data;i++;}return items[i];}void delqueue(sun *u){point *l;while(u-front!=u-rear){printf("%d",l-data);l=u-front-next;}}
  • 你上百度文库xb下一篇叫engineering radix sort 的文章fj其中list-based sort 部分即是你所需要的3785上面有原理说明及伪代码看完了写出来应该不难dhlp

关于数据结构与数据类型概念的问题?

  • 数据类型的出现是为了把数据分成所需内存大小不同的数据,编程的时候需要用大数据的时候才需要申请大内存,就可以充分利用内存。 例如大胖子必须睡双人床,就给他双人床,瘦的人单人床就够了。那如果我声明两个变量int a[2],int b[3]那是不是说明这两个变量的数据类型是不一样的?因为申请的内存空间是不一样的。教科书上又说具有相同数据结构的数据属同一类。同一类数据的全体称为一个数据类型,那a和b都是数组它们都拥有同样的结构的,即使int a[2],char b[3]。它们也都是具体相同的结构的,那不是说这a和b有相同的数据类型了??这不是自相矛盾了吗??谁能帮我解答一下这情况
  • 首先,我从你的提问的语句出发,括号内我的理解。那如果我声明两个变量int a[2],int b[3]那是不是说明这两个变量的(这是定义数据类型,它为int型,只是容纳度不同)数据类型是不一样的?因为申请的内存空间是不一样的(你说的内存空间当然不能一样,在内存中,假如int类型的数据在存储器0~64kb,那a和b需要的只是两段空间)。教科书上又说具有相同数据结构的数据属同一类(这是说相同数据结构内的数据类型相同,你理解的对)。同一类数据的全体称为一个数据类型,那a和b都是数组它们都拥有同样的结构的(相同的结构是对的,都是数组,但是长度不同,容容纳的元素类型不同,就是说容纳的数据元素不同),即使int a[2],char b[3](这里的意思是定义这个结构的类型,而这个结构的类型不单定义了他容纳的元素的类型,而且还定义了本身的类型。这句话才是你这个问题的主要看点?)。

“数据结构” 和 “数据类型” 两个概念的本质是什么,两者的区别与联系是什么?它们是从属关系吗?

  • 数据结构是数据的一种表现形式,我们把一个具体的人当做一个数据,这人都是由一个头两条腿组成。这头跟腿可以看成是具体的这个人的组成的数据项,他们的关系是头是在上面的腿是在下面的,所以具体的某个人这个数据的表现形式是头在上面两条腿在下面。而每个人都有这样的表现形式也就是都有这样的相同的数据结构,我们把每个具体的人归为同一类,把它叫做人类这种数据类型。这数据类型也可以看成是数据的一个属性,每个数据都有这样的一个属性。int a[3],int b[4]这a和b的数据类型的属性是相同的吗?他们的表现形式(数据结构)是一样的吗??我的回答是都不一样,a跟b一个是由3个int组成,一个是由4个int组成。如果拿人来做比较,其它所有的构成都一样,但一个是1颗脑袋,一个是2颗脑袋,那这两个我们会把它当成是相同的数据结构吗?数据结构都不同,那它们自然是不属于同一个数据类型了。在我看来数组类型,结构体类型是一个很大的概念,就像基本类型一样,我们可以说int是属于基本类型的,char也是属于基本类型的。但int跟char这两个不是属于同一个类型的。而int [3]这是属于数组类型,int [4]也是属于数组类型,但它们不是属于同一个数据类型。这有点像我们定义的类,我们用类声明的对象都是属于类类型,但类类型这个大的类型底下又分了无穷个自定义的类型。。。我的理解是这样的,我想问问大神们我的这样的理解有没有问题??
  • 严蔚敏编著的《数据结构》教材对数据结构的定义:相互之间存在一种或多种特定关系的数据元素的集合。有人说,数据结构就是用来存放有特定关系的数据的容器。数据类型是数据的一种分类,是按照数据结构来分类的。数据类型的出现是为了把数据分成所需内存大小不同的数据。还是不太明白,貌似数据结构中包含了数据类型,而数据类型又建立在数据结构之上?那么数组到底是一种数据结构还是一种数据类型呢?是不是除了线性表、队列、堆栈、树……这些,int char double 也可以看成一种简单的只有一个数据元素的数据结构呢?
版权声明