zl程序教程

您现在的位置是:首页 >  其他

当前栏目

macOS SwiftUI 算法界面之内容填充之快速搜索联合搜索和深度搜索

搜索macos算法 快速 深度 内容 界面 SwiftUI
2023-09-11 14:18:30 时间

实战需求

macOS SwiftUI 算法界面之内容填充之快速搜索联合搜索和深度搜索

本文价值与收获

看完本文后,您将能够作出下面的界面

macOS SwiftUI 算法界面之内容填充之快速搜索联合搜索和深度搜索

macOS SwiftUI 算法界面之内容填充之快速搜索联合搜索和深度搜索


基础知识

1、渗滤算法

上面的网格是解决这个问题的简化系统。每个正方形代表一个站点。封闭的网格是黑色的,系统从所有关闭的网格开始。一旦网网格被打开(只需单击一下),它就会变成浅灰色,除非它连接到顶行,否则它就被认为是满的,变成蓝色的。它满了,因为如果你从顶部进入液体不足,它会到达所有直接连接到顶部的网格。任何未连接到顶部的已打开的网格都将保持灰色。当底部行有任何完整的站点时,系统被称为渗出。这意味着液体或电流可以从上到下传播。

随着每个网格的开放,我们需要重新检查系统是否渗出。如果我们使用一种在网格中每个站点上循环的蛮力算法,那么确定这一点相当容易,但如果网格更大,它很快就会变得非常昂贵。随着网格大小的每次增加,性能都会二次下降。这就是Union Find数据结构派上用场的地方。如果我们在打开每个网格时对数据进行更改的方式谨慎而聪明,