相关疑难解决方法(0)

最佳拟合调度算法

我正在编写一个带有困难编程问题的调度程序.有几个事件,每个事件都有多个会议时间.我需要找到会议时间的安排,以便每个时间表包含任何给定事件一次,使用每个事件的多个会议时间之一.

显然我可以使用蛮力,但这很少是最好的解决方案.我猜这是一个相对基本的计算机科学问题,一旦我开始学习计算机科学课程,我就会学到这些问题.与此同时,我更喜欢任何我可以阅读的链接,甚至只是我可以谷歌的名字.

algorithm scheduling genetic-programming genetic-algorithm

25
推荐指数
2
解决办法
2万
查看次数

Python - 删除重叠列表

假设我有一个包含索引的列表列表[[start, end], [start1, end1], [start2, end2]].

例如:

[[0, 133], [78, 100], [25, 30]].

如何检查列表之间的重叠并删除每次更长的列表?所以:

>>> list = [[0, 133], [78, 100], [25, 30]]
>>> foo(list)
[[78, 100], [25, 30]]
Run Code Online (Sandbox Code Playgroud)

这是我到目前为止尝试做的事情:

def cleanup_list(list):
    i = 0
    c = 0
    x = list[:]
    end = len(x)
    while i < end-1:
        for n in range(x[i][0], x[i][1]):
            if n in range(x[i+1][0], x[i+1][1]):
                list.remove(max(x[i], x[i+1]))
        i +=1
    return list
Run Code Online (Sandbox Code Playgroud)

但除了令人费解之外它还没有正常工作:

 >>>cleanup_list([[0,100],[9,10],[12,90]])
 [[0, 100], [12, 90]]
Run Code Online (Sandbox Code Playgroud)

任何帮助,将不胜感激!

编辑:

其他例子是:

>>>a = [[0, 100], …
Run Code Online (Sandbox Code Playgroud)

python algorithm list

13
推荐指数
1
解决办法
2369
查看次数

用于查找重叠事件/时间的算法

在处理自定义日历时,我无法弄清楚如何找到与任何其他时间段重叠的时隙.

时隙从0到720(上午9点到晚上9点)开始,每个像素代表一分钟.

var events = [
 {id : 1, start : 0, end : 40},  // an event from 9:00am to 9:40am
 {id : 2, start : 30, end : 150},  // an event from 9:30am to 11:30am
 {id : 3, start : 20, end : 180},  // an event from 9:20am to 12:00am
 {id : 4, start : 200, end : 230},  // an event from 12:20pm to 12:30pm
 {id : 5, start : 540, end : …
Run Code Online (Sandbox Code Playgroud)

javascript algorithm jquery

6
推荐指数
2
解决办法
7696
查看次数