数据结构 —— 在线操作与离线操作
生活随笔
收集整理的這篇文章主要介紹了
数据结构 —— 在线操作与离线操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1.簡單理解
在線與離線可以簡單的理解為對所有的操作是否需要讀入完畢。
2.基本區分
在線的要求是可以不用先直到所有的操作(詢問、修改等),邊讀入邊執行,類似走一步做一步的思想。
離線的要求與在線相反,必須要求知道所有的操作,類似所有操作,回頭再做的思想,一般常用 query[] 數組來記錄所有操作。
3.常見的算法
常見的在線算法:正常寫題時,基本都是在線的思路,帶有 “可持久化” 的算法(主席樹、可持久化線段樹、可持久化字典樹等)也是在線的思路
常見的離線算法:整體二分、CDQ 分治、莫隊算法等
四.應用
對于一般的題來說,兩種算法均可以使用,但是區別在于:
- 在線算法的思路相對簡單,而代碼量大,容易爆棧,及其考驗心態
- 離線算法的思路相對復雜,而代碼量小,建議選手多采用
五.強制在線
對于某些題目,要求強制在線,比如當前讀入的數據需要 xor 上一次的結果、交互式等
總結
以上是生活随笔為你收集整理的数据结构 —— 在线操作与离线操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 字符串处理 —— 单模式匹配 —— MP
- 下一篇: Crash的数字表格(HYSBZ-215