演算法 將一天24小時按每半小劃分成48段

2021-10-19 23:37:42 字數 1103 閱讀 7137

將一天24小時按每半小劃分成48段,我們用乙個位圖表示選中的時間區間,例如110000000000000000000000000000000000000000000000,表示第乙個半小時和第二個半小時被選中了,其餘時間段都沒有被選中,也就是對應00:00~01:00這個時間區間。乙個點陣圖中可能有多個不連續的時間區間被選中,例如110010000000000000000000000000000000000000000000,表示00:00-1:00和02:00-02:30這兩個時間區間被選中了。

要求:寫乙個函式timebitmaptoranges,將上述規則描述的時間位圖轉換成乙個選中時間區間的陣列。

示例輸入:"110010000000000000000000000000000000000000000000"

示例輸出:["00:00~01:00", "02:00~02:30"]

function

timebitmaptoranges

(timebitmap)

function

addzero

(num)

let timearr = timebitmap.

split(''

).map(v =>

+v);

const res =

;let range =

;let start =0;

for(

let i =

0; i <= timearr.length; i++)if

(!timearr[i]

&& timearr[i -1]

)}for(

let j in range)

return res;}

console.

log(

timebitmaptoranges

('110010000000000000001110000000000000000000000111'))

;// [ '00:00~01:00', '02:00~02:30', '10:00~11:30', '22:30~24:00' ]

一天真的等於24小時嗎?

一 一天等於24小時,已經是不爭的事實。如果從更嚴謹的角度來看,其實一天也並不等於24小時,或大或小。但這不在本文的討論範圍內 首先闡述這個背景,其實是與今天要說的主題是有關的。我想從另外的角度來說說 一天不等於24小時!二 大家都知道,研發工程師與產品是有緊密聯絡的。產品作為需求方,制定需求文件輸...

某一天,24小時統計資料的整理。

public list getforstatisticdaytotimelist string day 時間陣列 int i 0 statisticdayobj statistictimeisnull null while iterator.hasnext else if statistictime...

Mysql 查詢一天中每半小時記錄的數量

select hour cdate as hour,floor minute cdate 30 as m,count as count from error log where e.date 2017 09 02 group by floor minute cdate 30 hour cdate o...