Re: [問題] 一個簡單的問題
通常,我都是不考慮使用的語言是什麼,
先採用 虛擬碼的方式來表現 解題的方法。
假設,你的資料是 儲存在硬碟的檔案之中,
使用
CHAR*1 CH(1000)
的方式讀進來,放到 CH(1000) 的陣列 裡面。
然後,假設陣列的第一個元素的代號是 1
一共有 MAX 個CHAR 讀進來
IP= 0
JP= IP + 1
ICT= 0
WHILE (JP .LT. MAX) DO {
IP= IP + 1
JP= IP + 1
WHILE (CH(JP) .EQ. CH(IP)) {
IP= IP + 1
JP= IP + 1
}
! 找到第一個不同
ICT= ICT + 1
DIF(ICT)= JP
END DO
DIF(1) - DIF(ICT) 所放的,就是 你要的 資料
以上的 演算法,沒有經過驗證,
不過 大致上的 意思到了
有問題的話,再跟我 聯絡
※ 引述《bennyhsu (阿彬)》之銘言:
: 各位大大好,小弟有一個小問題想請問一下
: 假如我這邊有一串資料
: EX:
: 000001111112222222333333333334444444444455555555....
: 每個數字的個數都不相同
: 那我要怎麼寫才能找出是在第幾個跳成1,又在第幾個跳成2
: 以此類推....
: 我的想法是,假如上下兩個數字不同的時候就記錄其位置
: 可是我始終寫不出來...麻煩大大們解答
: 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.20.132.129
推
02/27 02:45, , 1F
02/27 02:45, 1F
討論串 (同標題文章)
Fortran 近期熱門文章
PTT數位生活區 即時熱門文章