[演算法]求母音字母在單詞中第一次出現的位置.
求母音字母['a', 'e', 'i', 'o', 'u']在單詞中第一次出現的位置. 沒有時,為'0',如:
you(= 2), by (= 0), translate (= 3), i (= 1), Other (= 1)等, 要求用SQL實現!
測試用例:
create table test (word varchar2(30));
insert into test values('A');
insert into test values('quick');
insert into test values('brown');
insert into test values('fox');
insert into test values('jumps');
insert into test values('over');
insert into test values('the');
insert into test values('laze');
insert into test values('dog');
insert into test values('by');
insert into test values('my');
原帖地址:http://www.itpub.net/539893.html
[@more@]我的方法:
SQL> SELECT WORD, DECODE(POS, LEN+1, 0, POS) MP FROM
2 (SELECT WORD, VOWEL, MIN(DECODE(POS, 0, LEN+1, POS)) POS, LEN FROM
3 (
4 SELECT T.WORD, VW.VOWEL, INSTR(UPPER(T.WORD),VW.VOWEL) POS, LENGTH(T.WORD) LEN FROM
5 TEST T,
6 ( SELECT UPPER(SUBSTR(STR,ST+1,EN-ST-1)) VOWEL
7 FROM
8 (SELECT STR, DECODE(RN,1,0,INSTR(STR,SEP,1,RN-1)) ST ,
9 DECODE(INSTR(STR,SEP,1,RN), 0, LENGTH(STR)+1, INSTR(STR,SEP,1,RN)) EN
10 FROM
11 (SELECT ROWNUM RN, STR, SEP FROM
12 (SELECT 'a/e/i/o/u' STR, '/' SEP FROM DUAL)
13 CONNECT BY ROWNUM<=LENGTH(STR)-LENGTH(REPLACE(STR,SEP,''))+1
14 )
15 ) WHERE SUBSTR(STR,ST+1,EN-ST-1) IS NOT NULL
16 ) VW
17 )
18 GROUP BY WORD
19 )
20 /
WORD MP
------------------------------ ----------
A 1
brown 3
by 0
dog 2
fox 2
jumps 2
laze 2
me 2
my 0
over 1
quick 2
the 3
已選擇12行。
hmxxyy的方法:
select word, instr(translate(lower(word), 'aeiou', 'XXXXX'), 'X') pos from test
WORD POS
------------------------------------------------------------ ----------
A 1
quick 2
brown 3
fox 2
jumps 2
over 1
the 3
laze 2
dog 2
by 0
my 0
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29867/viewspace-832525/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- LeetCode-345-反轉字串中的母音字母LeetCode字串
- jquery如何獲取指定元素在陣列中第一次出現的位置jQuery陣列
- Amazon 面試題 | 反轉母音字母面試題
- 【leetcode 簡單】 第八十三題 反轉字串中的母音字母LeetCode字串
- LeetCode每日一題: 反轉字串中的母音字母(No.345)LeetCode每日一題字串
- 2351. 第一次出現兩次的字母
- 從面試題中學演算法(1)--雜湊表查詢字串中第一次僅出現一次的字母面試題演算法字串
- javascript獲取指定元素第一次出現的位置JavaScript
- 將字串中的每個單詞順序進行顛倒,單詞還是原來的單詞,字母順序不發生變化字串
- 讀取檔案,每行不超過100個字元,輸出每行中字母最多的單詞的字母數字元
- 有效的字母異位詞
- 在Linux中呼叫MapReduce對檔案中各個單詞出現次數進行統計Linux
- CSS3實現的將英文單詞首字母設定為大寫CSSS3
- js將英文單詞首字母大寫效果JS
- CoffeeScript攻略3.6:大寫單詞首字母
- 對文字檔案中的單詞統計出現的次數(即詞頻)並按詞頻的從高到低排序排序
- 在vc中實現獲取漢字拼音的首字母
- 呼叫MapReduce對檔案中單詞出現次數進行統計
- js統計陣列中單詞出現次數程式碼例項JS陣列
- 軟體工程導論課後習題Github作業(把一個英文句子中的單詞次序逆序,單詞中字母正常排列)軟體工程Github
- 簡單方法在C#中取得漢字的拼音的首字母(轉)C#
- CSS如何將單詞首字母設定為大寫CSS
- DFA在C#中的實現:過濾敏感詞C#
- **呼叫MapReduce對檔案中各個單詞出現的次數進行統計**
- LeetCode初級演算法之字串:242 有效的字母異位詞LeetCode演算法字串
- 計算出一段英文中出現頻率最高的單詞(第一次面試時沒做出來,現在都記憶深刻)...面試
- leedcode-有效的字母異位詞
- 在 DotNetty 中實現同步請求Netty
- 定位資料在ASM中的位置ASM
- Python將所有的英文單詞首字母變成大寫Python
- 超越單詞計數:上下文位置編碼CoPE
- 單詞背背佳1.0演算法分析演算法
- 讓我們一起啃演算法----字母異位詞分組演算法
- 基於單字位置最大概率的Python分詞工具snailsegPython分詞AI
- js將單詞數字母變換為大寫程式碼例項JS
- jQuery元素在陣列中的索引位置jQuery陣列索引
- 匯出Oracle中的同義詞Oracle
- 統計一個字串中的單詞的個數,並列印各個單詞字串