- 新增OperationDashboard.vue全屏大屏组件 - 添加6个核心KPI指标卡片: 进水总量/出水总量/产销差率/营收额/平均水质/报警次数 - 实现6个ECharts图表: 供水趋势/水质分布/报警统计/管网空间/设备状态/营收分析 - 创建静态HTML版本operation-dashboard.html,使用CDN加载Vue3/ECharts/Element Plus - 更新路由配置,添加/operation路径支持 - 修复nextTick导入问题,优化build脚本 🚧 开发者: bot_dev1 📝 任务: #38 [BI] 运营仪表盘 + 供水专题大屏
29 lines
953 B
Markdown
29 lines
953 B
Markdown
## quickselect
|
|
|
|
A tiny and fast [selection algorithm](https://en.wikipedia.org/wiki/Selection_algorithm) in JavaScript
|
|
(specifically, [Floyd-Rivest selection](https://en.wikipedia.org/wiki/Floyd%E2%80%93Rivest_algorithm)).
|
|
|
|
```js
|
|
quickselect(array, k[, left, right, compareFn]);
|
|
```
|
|
|
|
Rearranges items so that all items in the `[left, k]` are the smallest.
|
|
The `k`-th element will have the `(k - left + 1)`-th smallest value in `[left, right]`.
|
|
|
|
- `array`: the array to partially sort (in place)
|
|
- `k`: middle index for partial sorting (as defined above)
|
|
- `left`: left index of the range to sort (`0` by default)
|
|
- `right`: right index (last index of the array by default)
|
|
- `compareFn`: compare function
|
|
|
|
Example:
|
|
|
|
```js
|
|
const arr = [65, 28, 59, 33, 21, 56, 22, 95, 50, 12, 90, 53, 28, 77, 39];
|
|
|
|
quickselect(arr, 8);
|
|
|
|
// arr is [39, 28, 28, 33, 21, 12, 22, 50, 53, 56, 59, 65, 90, 77, 95]
|
|
// ^^ middle index
|
|
```
|