1、分析过程——树形结构的遍历
(1)树:
有且仅有一个根节点
在根节点下可以有任意个子节点
没有子节点的节点称为叶子节点
(2)树形结构的遍历
广度优先遍历1 2 3 4 5 6 7 8 9 10
广度递归
广度非递归
深度优先遍历1 2 5 10 6 3 7 4 8 9
深度递归
深度非递归
2、队列:FIFO(先进先出)
创建一个队列
先将根节点入队
将根节点出队,遍历根节点下的所有子节点,如果有子节点,再将子节点入队
依此类推
3、文件下载的方式
1、使用超链接的方式实现文件的下载
在超链接
注意:超链接的方式,如果浏览器不能识别这种格式的文件,会提示下载,如果支持该格式的文件,会直接打开(例如压缩文件它不支持,也打不开,就会让你下载,如果是一张图片的话,浏览器是支持的,就会直接在页面上显示了)
2、通过手动编写代码的方式实现文件的下载
设置两个头和一个流
Content-Type:文件的MIME类型
Content-Disposition:浏览器支持该格式的文件时,不直接打开,也提示下载
设置代表该文件的输入流,(因为输出流是固定的,它是由Response去生成的,就是response.getOutputStream())