数据结构求 数据结构求最短路径的例题
什么是数据结构和算法
你好,算法就是计算机处理解决问题的计算机能理解的方法。
比如算一个阶乘 , 计算机的算法就是写一个循环,从高到底, 一直乘下去,直到 1 为止。
复杂的算法比如一个强连通带权网络,求两点间的最短路径,这个很有用啊....比如采用广度优先算法,或深度优先算法
数据结构指数据在计算机中存储存在的方式。
比如文件在硬盘中,有二进制,文本等形式存放, 程序中的一组数字可能放在数组里面,也可能在栈里面,也肯能在链表里面
【数据结构】求线性表的长度和线性表上的查找算法?
/* 顺序存储类型*/
typedef struct
{ ElemType data[MAXSIZE]; /*存放线性表的数组*/
int length; /* length是顺序表的长度*/
}SqList; SqList L;
/* 求顺序表长度*/
int ListLength(SqList L)
{return(L.length);}
/* 给定序号从顺序表中查找元素*/
void ListGet(SqList L ,int i)
{ if(L.length==0) printf("顺序表空\n");
else if(i<1||i>L.length) printf("查找的位置不正确\n");
else printf("顺序表中第%d个元素的值为:%d\n",i,L.data[i-1]);
}
/* 从顺序表中查找与给定元素值相同的元素在顺序表中的位置*/
int ListLocate(SqList L, ElemType x)
{int i=0;
while(i i++; if (i else return 0; } 程序=数据结构+算法 数据结构是相互之间存在的一种或多种特定关系的数据元素的集合。包括4类基本的结构:集合、线形结构、树形结构、图状或网状结构。通俗点就是数据的逻辑结构,比方说这些数据在内存中以什么样的结构存放。 常用的线性结构有:线性表,栈,队列,数组,串。线性表是多个相同元素组成的有限线性序列。栈是一种特殊线性表,它将插入和删除限制在表的一端进行,是一种后进先出表。 队列也是一种操作受限的特殊线性表,它只允许在表的前端进行删除操作,而在表的后端进行插入操作。 顺序存储结构在计算机内用一组连续的内存单元来存储数组。一堆数组本身就是顺序表结构,多维数组是一种特殊的线性结构。串是一种数据元素固定为字符的线性表。 串上的操作是针对串的整体或串的某一部分子串进行的,而线性表是针对线性表上的某个数据元素进行的 另外,线性表是最基本、最简单、最常用的一种数据结构。线性表中数据元素之间的关系是一对一的关系,即除了第一个和最后一个数据元素之外,其它数据元素都是首尾相接的,但这只适用大部分线性表,而不是全部。在数据结构逻辑层次上细分,线性表可分为一般线性表和受限线性表。数据结构有哪些公式?
数据结构,求问线性结构和线性表有什么区别呢?谢谢