查看積分策略說明發表回覆
Discuz! 代碼
提示插入
直接插入
說明訊息

插入粗體文本 插入斜體文本 插入下劃線 置中對齊 插入超級連結 插入信件位址 插入圖像 插入 flash 插入代碼 插入引言 插入列表
刪除線 直線分隔線 虛線分隔線
    
添加文字底框
內容 [字數檢查]:

表情符號

更多 Smilies
字型大小 |||
溫馨提示:本區開放遊客瀏覽。


文章關鍵字 : [功能說明]
(關鍵字可加強搜索準確性, 如關鍵字多於一組, 請以 , 作分隔, e.g. : 阿笨,shiuh,第一笨)

 關閉 URL 識別 | html 禁用
 關閉 表情符號 | 表情符號 可用
 關閉 Discuz! 代碼 | Discuz! 代碼 可用
使用個人簽名
接收新回覆信件通知
推薦放檔網絡空間

檔案(Torent, zip等)
  1. freedl
  2. multiupload
  3. btghost
  4. 便當狗
  5. mediafire
  6. pillowangel
圖片(JPG, GIF等)
  1. hotimg
  2. tinypic
  3. mousems2
  4. imageshack
  5. imm.io
>>>歡迎推薦好用空間


最新10篇文章回顧
Dr.J

 發表於 2011-5-30 08:39 PM

感謝各位的回覆,不過還是沒有辦法比較有效的把他整個拆出來,只好放棄了Orz


siva

 發表於 2011-5-28 11:39 PM


引用:
Dr.J寫到:
大大,請問一下,如果我要照種類跟幣別分類的話?  金額可以不用理他Orz
最主要是要種類跟幣別分開@@





上面寫了呀? . 用三維排序就 OK 了呀...

var 資料陣列[ 總項數 ]  = new Array(2);

ArrayData[ 0 ][0]  =  "交通 ";
ArrayData[ 0 ][1]  =  "NTD ";
ArrayData[ 0 ][2]  =  100;
.....
....
....


// 三維排序 ( 種類  幣别   金額 )
ArrayData.sort(  
   function(x, y){
   return x[0] == y[0] ? (x[1] == y[1] ? x[1] - y[1] : x[2] - y[2] ) : x[0] - y[0]
  }
);

很久沒寫 java 了. 忘了字串可不可以直接減法比較. 不行就自己改成字串比較式.

不要金額的話. 就自己代入前面寫二維排序就好了


Dr.J

 發表於 2011-5-28 11:28 PM

大大,請問一下,如果我要照種類跟幣別分類的話?  金額可以不用理他Orz
最主要是要種類跟幣別分開@@



引用:
siva寫到:

引用:
Dr.J寫到:
對呀,用sql明明就很好做Orz,不過用程式碼來寫我突然想不到啥方法
本來想弄個12個陣列出來的說

程式是要用Java寫的,是不是有什麼集合可以拿來做呢@@?

[Dr.J 在  2011-5-28 10:58 AM 作了最後編輯]


寫成 java 二維排序大致如下:
(依幣別, 金額排序)

資料陣列.sort(  
   function(x, y){
   return 幣別x == 幣別y ? 金額x - 金額y : 幣別x - 幣別y
  }
);

三維寫法一樣.   
資料陣列.sort(  
   function(x, y){
   return 1維x == 1維y ? (2維x == 2維y ? 3維x - 3維y : 2維x - 2維y ) : 1維x - 1維y
  }
);

要幾維都可以. 一直代進去就 OK 了


Dr.J

 發表於 2011-5-28 09:10 PM

這樣也ok的,只要能分開就好了^^

懇請大大似教m(_ _)m


引用:
陽だまり寫到:

引用:
Dr.J寫到:
想跟各位大大請教一下
小弟有個二維陣列的資料

種類  幣别   金額
交通  NTD  100
伙食  NTD  200
雜費  RMB  100
住宿  USD  300
伙食  RMB  400
雜費  RMB  200
.
.
種類總共有4種,幣別種共有3種
我要轉成
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                  RMB  200
                                                    USD  300
==========================

不好意思請問一下
為什麼結果要是
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                  RMB  200
                                                    USD  300
==========================

像底下這樣不行嗎
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                                    USD  300
                                  RMB  200
==========================


陽だまり

 發表於 2011-5-28 04:02 PM


引用:
Dr.J寫到:
想跟各位大大請教一下
小弟有個二維陣列的資料

種類  幣别   金額
交通  NTD  100
伙食  NTD  200
雜費  RMB  100
住宿  USD  300
伙食  RMB  400
雜費  RMB  200
.
.
種類總共有4種,幣別種共有3種
我要轉成
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                  RMB  200
                                                    USD  300
==========================

不好意思請問一下
為什麼結果要是
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                  RMB  200
                                                    USD  300
==========================

像底下這樣不行嗎
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                                    USD  300
                                  RMB  200
==========================


siva

 發表於 2011-5-28 11:26 AM


引用:
Dr.J寫到:
對呀,用sql明明就很好做Orz,不過用程式碼來寫我突然想不到啥方法
本來想弄個12個陣列出來的說

程式是要用Java寫的,是不是有什麼集合可以拿來做呢@@?

[Dr.J 在  2011-5-28 10:58 AM 作了最後編輯]


寫成 java 二維排序大致如下:
(依幣別, 金額排序)

資料陣列.sort(  
   function(x, y){
   return 幣別x == 幣別y ? 金額x - 金額y : 幣別x - 幣別y
  }
);

三維寫法一樣.   
資料陣列.sort(  
   function(x, y){
   return 1維x == 1維y ? (2維x == 2維y ? 3維x - 3維y : 2維x - 2維y ) : 1維x - 1維y
  }
);

要幾維都可以. 一直代進去就 OK 了


Dr.J

 發表於 2011-5-28 10:52 AM

對呀,用sql明明就很好做Orz,不過用程式碼來寫我突然想不到啥方法
本來想弄個12個陣列出來的說

程式是要用Java寫的,是不是有什麼集合可以拿來做呢@@?

[Dr.J 在  2011-5-28 10:58 AM 作了最後編輯]


Ralse

 發表於 2011-5-28 10:40 AM

我用MySQL居多,所以二維陣列頂多只知道流程

是我的話大概會先把NTD RMB USD三個先用case搭配forloop存成另外三個陣列
然後對每個陣列的種類再做成獨立的陣列
之後從這些獨立的陣列用forloop每三個做一次輸出這樣

第二種方法是先將整個二維陣列針對幣別做泡泡排序
然後記下哪幾個array value是NTD RMB USD三個變換的地方
之後就用for loop搭配case條件去一比一比比較然後整理成想要的表格
最後一口氣輸出這樣

我覺得用mysql很快就能解決的問題,用其他語言真的要寫好多code @@


Dr.J

 發表於 2011-5-28 08:55 AM

想跟各位大大請教一下
小弟有個二維陣列的資料

種類  幣别   金額
交通  NTD  100
伙食  NTD  200
雜費  RMB  100
住宿  USD  300
伙食  RMB  400
雜費  RMB  200
.
.
種類總共有4種,幣別種共有3種
我要轉成
=========================
交通  金額   伙食   金額  雜費   金額   住宿   金額
NTD  100   NTD  200
                 RMB  400  RMB  100
                                  RMB  200
                                                    USD  300
==========================
上面的資料要把四個項目都分出來,並且每一行的幣別必須一致,不然就新增一行

請問這個有沒有比較好的方法可以處理呢Orz,如果是資料庫的話應該可以用Group by處理,但是這種二維陣列突然一時之間想不到辦法

小的資質愚頓,想請問各位大大有沒有什麼好方法,先謝謝了m(_ _)m

[Dr.J 在  2011-5-28 08:59 AM 作了最後編輯]





所在時區為 GMT+8, 現在時間是 2024-5-11 07:11 PM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.026683 second(s), 6 queries , Qzip disabled