博客
关于我
数据结构的学习历程02
阅读量:342 次
发布时间:2019-03-04

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

数据结构的学习历程02

杨辉三角

在这里插入图片描述

public class Demo01 {       public static void main(String[] args) {           Scanner sc = new Scanner(System.in);        System.out.println("请输入杨辉三角的行数:");        int n =sc.nextInt();        List
> ret = YH(n); for (;n>0;n--){ System.out.println(ret.get(5-n)); } } public static List
> YH(int n) { if (n==0) return null; List
> ret =new ArrayList<>(); for (int i = 0;i
cur =new ArrayList<>(); if (i == 0){ cur.add(1); ret.add(cur); continue; } cur.add(1); for (int j = 1 ;j < i;j++){ cur.add(ret.get(i-1).get(j-1)+ret.get(i-1).get(j)); } cur.add(1); ret.add(cur); } return ret; }}

先进后出的数据结构,类型为Stack。

如题

一个栈的入栈序列为abc123,则这个栈的不可能出栈序列为:A  abc123   每进一个出一个B  acb321   进1出1 进2出2 进3出3C  321bac   因为3先出,所以进了6个数据,而c最后出,则不可能,故选CD  321cba   进6出6

进栈出栈

进栈:push()

出栈:pop()
获取栈顶元素:peek()

栈的实现

中缀表达式(前、后缀表达式)(选)

而在栈中输入后缀表达式时,遇到变量/常量先入栈,遇到运算符号则出栈顶两个变量/常量。第一个数字为这个运算符的右操作数,第二个数字就为运算符的左操作数。

队列

先进先出的数据结构,类型为Queue

进队出队

进队:offer()

出队:poll()
获取队头元素:peek()

队列的实现

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

你可能感兴趣的文章
Navicat向sqlserver中插入数据时提示:当 IDENTITY_INSERT 设置为 OFF 时,不能向表中的标识列插入显式值
查看>>
Navicat因导入的sql文件中时间数据类型有参数而报错的原因(例:datetime(3))
查看>>
Navicat如何连接MySQL
查看>>
navicat导入.sql文件出错2006- MySQLserver has gone away
查看>>
Navicat导入海量Excel数据到数据库(简易介绍)
查看>>
Navicat工具Oracle数据库复制 or 备用、恢复功能(评论都在谈论需要教)
查看>>
Navicat工具中建立数据库索引
查看>>
navicat工具查看MySQL数据库_表占用容量_占用空间是多少MB---Linux工作笔记048
查看>>
navicat怎么导出和导入数据表
查看>>
Navicat怎样同步两个数据库中的表
查看>>
Navicat怎样筛选数据
查看>>
Navicat报错connection is being used
查看>>
Navicat报错:1045-Access denied for user root@localhost(using passwordYES)
查看>>
Navicat控制mysql用户权限
查看>>
navicat操作mysql中某一张表后, 读表时一直显示正在载入,卡死不动,无法操作
查看>>
Navicat连接mysql 2003 - Can't connect to MySQL server on ' '(10038)
查看>>
Navicat连接mysql数据库中出现的所有问题解决方案(全)
查看>>
Navicat连接Oracle出现Oracle library is not loaded的解决方法
查看>>
Navicat连接Oracle数据库以及Oracle library is not loaded的解决方法
查看>>
Navicat连接sqlserver提示:未发现数据源名并且未指定默认驱动程序
查看>>