gpt4 book ai didi

algorithm - 窗口定位算法

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:50:49 25 4
gpt4 key购买 nike

我需要一个算法,可以在屏幕上其他小工具窗口之间的第一个可用空间中找到一个小工具窗口。基本上,一个屏幕将包含不同大小的小工具窗口,所有窗口都位于不同的位置。在屏幕上添加另一个固定大小的小工具时,我需要一种方法来锻炼小工具的放置位置,即小工具之间的空白区域如果算法找不到合适的空间,那么小工具将被放置在现有的小工具的底部。
我考虑过在代表屏幕的地方创建一个二维数组,其中包含所有的小工具和它们占用的空间,但我认为可能有一种更有效的方法来实现这一点。
要求如下
从左到右/从上到下移动,找到第一个可用的空白空间,该空间将完全适合小工具窗口,并与周围小工具保持固定的边距。
如果找不到空白,则将该小工具放置在所有其他小工具的左下角。
谢谢您。

最佳答案

假设你已经为新的小工具找到了一个地方。
向左移动,直到它碰到屏幕边缘或其他小工具的右边缘。
将其移到顶部,直到它碰到屏幕边缘或其他小工具的底部边缘。
这意味着,您可以尝试集合x{0, g1.right, g2.right, .., gn.right}的所有组合和集合y{0, g1.bottom, g2.bottom, .., gn.bottom}的所有组合。
非常简单,给出了O(n^3)复杂性。(n^2从上面和另一个n检查位置是否可用)

关于algorithm - 窗口定位算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4904909/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com