博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
算法(1)——流程图和DNS图
阅读量:3910 次
发布时间:2019-05-23

本文共 856 字,大约阅读时间需要 2 分钟。

图来自——《java常用算法手册》

一、算法的实现

1.流程图表示

 

2.N-S图

3.伪代码表示

二、数据结构

1.数据结构的分类

1)线性

  • 有且仅有一个开始节点和一个终端节点
  • 所有节点最多只有一个直接前驱和直接后继节点

2)非线性

  • 一个节点可能有多个直接前驱和直接后继节点

实际应用中,数组、广义表、树结构和图结构等结构都是非线性结构

2.数据结构的存储方式

1)顺序存储

2)链式存储

3)索引存储

4)散列存储

3.数据结构

1)循环队列

front指向头,rear指向队尾的下一个位置

  • 队为空的推断:front==rear;队为满的推断:(rear+1)%MAXSIZE==front
  • 长度 :len=(rear-front+maxsize)%maxsize
  • 插入:
public boolean enqueue(Object obj){           if((rear+1)%a.length==front){               return false;           }           a[rear]=obj;           rear = (rear+1)%a.length;           return true;       }
  • 删除:
public Object dequeue(){           if(rear==front){               return null;           }           Object obj = a[front];           front = (front+1)%a.length;           return obj;     }

2)二叉树

  • 对于任意一棵二叉树,如果其叶结点数为N0,而度数为2的结点总数为N2,则N0=N2+1
  • 在非空二叉树的第i层上,至多有2^(i-1)个节点(i>=1)
  • 在深度为K的二叉树上最多有2^k-1个结点(k>=1)

先序中序后序遍历

 

 

 

 

转载地址:http://byfrn.baihongyu.com/

你可能感兴趣的文章
关于C# Span的一些实践
查看>>
linq 查询的结果会开辟新的内存吗?
查看>>
WPF开发的实用小工具 - 快捷悬浮菜单
查看>>
.Net orm 开源项目 FreeSql 2.0.0
查看>>
多线程并发如何高效实现生产者/消费者?
查看>>
学习搭建 Consul 服务发现与服务网格-有丰富的示例和图片
查看>>
IdentityServer4系列 | 简化模式
查看>>
如何在 C# 中使用 AutoMapper
查看>>
BCVP开发者说第4期:Remember.Core
查看>>
Entity Framework Core 5中实现批量更新、删除
查看>>
小试YARP
查看>>
如何使用 C# 中的 HashSet
查看>>
api-hook,更轻量的接口测试工具
查看>>
一个情怀引发的生产事故(续)
查看>>
做架构也得讲武德
查看>>
PHP大势已去,PHP宝藏可为我所用
查看>>
asp.net core 集成 prometheus
查看>>
如何在 .NET 中使用 Redis缓存
查看>>
C#阻塞队列BlockingCollection
查看>>
在传统行业做数字化转型之业务篇
查看>>