Lastor
coding 實戰又碰到了演算法題,有點被難到了,用了好多迴圈,想不到更優雅的解
Lastor
大致上是,原本後端會給兩組 Array,前端用他們去組一張表格
Lastor
一組是 table 的欄位設定,用來規範欄位順序,定義 thead 標題名稱那些
Lastor
另一組就是 body rows data
Lastor
需求是會追加三組資料,各自要插在原本的某個特定欄位後面
Lastor
大概是像這樣,插入新欄位
https://imgs.plurk.com/QCX/PrC/42nmhsFflO63DNTaxMMi6QpbBTj_lg.png
Lastor
頭痛的是,這追加的欄位是什麼收據資料之類的,所以會是 id, name, 金額.... 這樣一包
Lastor
一筆收據會插 n 個欄位,三組收據插入的欄位數是不同的
Lastor
然後每個 row 會有的收據數量還不一樣
Lastor
例如說第一條 row 收據只有 2 張,但第二條 row 會有 3 張。1 張收據假設要有 3 個欄位,所以要多塞 3 x 3 個欄位
Lastor
只有 2 張的那條 row 還要塞空白進去,不然格數會對不上
Lastor
這我連該怎麼問 chatGPT 都不知道
Lastor
而且原本這表單生成,還得依據前人留下的架構去改,有點給他炸腦
Lastor
反正,大致上是做出來的,只是我覺得寫得好醜,迴圈數好多
Lastor
這個最煩的是,我一定要先跑一次迴圈,去找出收據最多有幾張。後面才能再跑迴圈去依照最大數量塞填充
Lastor
現在好像時間複雜度是這樣....
n (撈max數) + n (生表頭) + n*n (生表單)
Lastor
好像沒辦法在一個 n*n 全部做掉,一堆迴圈很難受
載入新的回覆