首先是有关Git的,删除分支的一些操作,因为IDEA不能删除特定分支(可能是我不会?),
先是git branch -b main,这个main指的是你要删除的本地分支的名字,
而后是git push origin --delete main,main指的是你要删除的远程仓库分支的名字。
接下来是整个实验一个很重要的地方,是关于MultiIntervalSet如何复用IntervalSet,这部分是个难点,我的想法是增加一个私有的成员变量xxx,其类型为List<IntervalSet<L>>,然后List中的元素的存放的时间段数量依次递减,insert时就寻找还没有插入该label的IntervalSet即可。
然后是装饰器Decorator,实现checkBlank或checkOverlap是通过两个具体装饰角色来进行的,而装饰器和具体装饰角色的其他方法是直接return的,此时如果已经插入有很多时间段的intervalSet进行装饰后,调用相关方法就会出现固定的返回值,因此我们要checkBlank时,需新建立一个变量,通过
IntervalSet<L> intervalset = new 具体装饰角色的名字(intervalSet);
声明后调用checkBlank即可完成检查,而后续还需要用intervalSet时只能用intervalSet来调用方法,因为intervalset调用方法的返回值是固定的。