判断多个数据是否重叠

思路:开始或者结束数据是否在其他数据中间,存在则重叠

public static boolean checkOverlap( List< String > list )
    {
        boolean result = false;
        for( int i = 0; i < list.size(); i++ )
        {
            double num1 = Double.valueOf( list.get( i ).split( "-" )[0] );
            double num2 = Double.valueOf( list.get( i ).split( "-" )[1] );
            for( int j = 0; j < list.size(); j++ )
            {
                if( j != i )
                {
                    String [] array = list.get( j ).split( "-" );
                    double star = Double.valueOf( list.get( j ).split( "-" )[0] );
                    double end = Double.valueOf( list.get( j ).split( "-" )[1] );
                    
                    if( num1 >= star && num1 <= end )
                    {
                        result = true;
                        break;
                    }
                    if( num2 >= star && num2 <= end )
                    {
                        result = true;
                        break;
                    }
                }
                
            }
            
            if( result == true )
            {
                break;
            }
            
        }
        return result;
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容