JZTXT
  • 首页
  • Ai
  • Java
  • Python
  • Android
  • Mysql
  • JavaScript
  • Html
  • CSS

n log n 的求最长上升子序列

发布时间 2023-10-17 21:32:50作者: huangqixuan

\(O(n \log n)\)的求最长上升子序列

法一:二分

int LIS(){
    int b[MAXN], top = 0, a[MAXN];
    b[0] = -1;
    for(int i = 1; i <= n; i++){
        if(a[i] > b[top]){
            top++, b[top] = a[i];
        }else{
            int l = 1, r = top;
            while(l < r){             // 二分,O(log n)
                int u = (l + r) >> 1;
                if(a[i] > b[u]){
                    l = u + 1;
                }else{
                    r = u - 1;
                }
            }
            b[l] = a[i];
        }
    }
    return top;
}

法二:线段树

略
    本栏目推荐文章
  • 代码随想录 day18 找树左下角的值 路径总和 从中序与后序遍历序列构造二叉树
  • 【LeetCode 2701. 连续递增交易】MySQL用户变量编程得到严格递增连续子序列的开始位置,结束位置,长度等统计信息
  • python经典有序序列的list列表推导式
  • 【Leetcode 2474. 购买量严格增加的客户】MySQL用户变量编程解决严格递增连续子序列问题
  • 解题报告P2501 [HAOI2006] 数字序列
  • matlab使用长短期记忆(LSTM)神经网络对序列数据进行分类|附代码数据
  • chromium vlog 替换 log(info)
  • 【问题记录】【Fastjson】Fastjson 反序列化失败,syntax error, position at 0, name value
  • System.ArgumentException: 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。
  • MySQL Ignoring the redo log due to missing MLOG_CHECKPOINT between the checkpoint
版权声明:本网站为非赢利性站点,本网站所有内容均来源于互联网相关站点自动搜索采集信息,相关链接已经注明来源。
联系我们