算法与数据结构 一(Java)

    这是一个讲究效率的世界。在同样的条件下,事物的效率和自身的竞争力、受欢迎程度是成正比的。

    计算机科学是一门研究信息的表示和处理的科学。而信息的表示和组织又直接关系到信息处理程序的效率。假如,需要在很多写有姓名的纸张中找出"李某人",一种笨方法就是一个个筛选对比,这样的效率可想而知。那把这些姓名(数据)制作成带有“A、B、C...”目录的花名册,在根据目录去查找,就能省去很多运算,从而提升效率。


    数据结构分为数据的逻辑结构数据的物理存储结构对数据的操作(或运算)。通常,算法的设计取决于数据的逻辑结构,算法的实现取决于数据的物理存储结构

    数据的逻辑结构:数据之间的逻辑关系。其中的逻辑关系是指数据元素之间的前后间关系,而与它们在计算机中的存储位置无关。 

    数据的物理结构:指数据的逻辑结构在计算机存储空间的表示(映像),分数据元素的机内表示和关系的机内表示。

   数据的逻辑结构

        根据数据元素之间的关系的不同特性,有4类基本逻辑结构: 集合线性结构树型结构图型结构。    

        1.集合:数据结构中的元素之间除了“同属一个集合”的相互关系之外,别无其他关系。

集合

        2.线性结构:数据结构中的元素之间存在一对一的相互关系。

线性结构

                可以用B=(D,R)来表示数据结构。其中B代表一种数据结构,D代表数据,R代表数据之间的关系。上方线性图可以这么写:

                L=(D,R) 

                D={1,2,3,4,5} (这里的顺序不影响数据之间的关系)

                R={r}

                r={<5,2>,<2,1>,<1,3>,<3,4>}       序偶<x,y>表示数据之间的关系,x是y的前驱,y为x的后继。

                线性数据结构的特点是数据之间的一对一的联系。

        3.树型结构:数据结构中的元素之间存在一对多的相互关系。

树型结构

                T=(D,R)

                D={1,2,3,4,5,6,7,8}

                R={r}

                r={<1,2>,<1,3>,<1,4>,<2,5>,<2,6>,<4,7>,<4,8>}

                树型数据结构的特点是数据之间的一对多的联系。

        4.图型结构:数据结构中的元素之间存在多对多的相互关系。

图型结构(我觉得还蛮好看的)

                G={D,R}

                D={1,2,3,4,5,6,7}

                R={r}

                r={<1,3>,<3,1>,<3,4>,<4,3>,<3,7>,<7,3>,<4,6>,<6,4>,<6,7>,<7,6>,<6,2>,<2,6>,<7,5>,<5,7>,<5,2>,<2,5>,<2,1>,<1,2>}

                图型数据结构的特点是数据之间多对多的联系。

   数据的物理结构

        数据结构在计算机中的表示(映像)称为数据的物理结构,又称为存储结构,它包含数据的机内表示关系的机内表示

        1.数据的机内表示

                用二进制位(bit)的位串来表示数据元素,通常称这个位串为结点。

        2.关系的机内表示

                数据元素之间关系的机内表示可以分为顺序映像和非顺序映像,常用的两种存储结构:顺序存储结构和链式存储结构。顺序映像借助元素在存储器中的相对位置来表示数据之间的逻辑关系。非顺序映像借助指示元素存储位置的指针来表示数据元素之间的逻辑关系。  

                顺序存储结构:

顺序存储

                数据(1,2,55,64,7)以顺序存储结构存储,首元素1存放在地址为0100的单元中(假设数据占两个字节),第二个元素存放在地址为0102中,以此类推。这种存储方式很容易确定序列中任意一个元素的位置,第n个数据地址可以用0100+(n-1)*2来得出。

            链式存储结构:

链式存储

                同样的数据(1,2,55,64,7)以链式存储结构存储,其中首元素1存放在地址0108中,第二个元素2的存储位置由首元素的指针域指示出来,地址是0100;第三个元素55的存储位置由第二个元素的指针域指示出来,地址是0104,以此类推。

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,590评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 86,808评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,151评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,779评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,773评论 5 367
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,656评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,022评论 3 398
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,678评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 41,038评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,659评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,756评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,411评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,005评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,973评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,203评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,053评论 2 350
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,495评论 2 343

推荐阅读更多精彩内容