給定兩個字符串str1和str2我有一個描述共享子字符串的匹配列表,其格式爲[str1_beg,str1_end,str2_beg,str2_end]。我想刪除多餘的匹配,其中匹配的str1_beg,str1_end和str2_beg,str2_end嵌入其他一些匹配中。如何刪除兩個字符串之間的多餘匹配?
1
A
回答
0
對於每個[beg_index,end_index]找到[beg_index_new,end_index_new]並刪除滿足end_index < end_index_new和beg_index> = beg_index_new的那些。
這就是O(n^2)
0
首先,您可以更有效地存儲您的匹配。
[str_beg,str2_beg,match_len]
這也使它很容易檢查冗餘,例如
for match in matches:
for i in xrange(len(matches)):
if matches[i][:2] == match[:2] and mathches[i][2] < match[2]:
del matches[i]
我假設你匹配列表被分配到一個名爲匹配的變量,並有我提出的結構以上,所以馬。我使用的是<運算符,而不是< =運算符,因爲如果它們相等,則它們完全相同,我假設您不會有兩次相同的匹配。 我在哪裏檢查matche的[:2]切片,我是他們的名單的頭兩個元素,這是首發職位的國王。
相關問題
- 1. 刪除兩個字符串之間的匹配字符
- 2. C#:如何刪除2個字符串之間的匹配子字符串?
- 3. PHP:匹配兩個字符串之間的字符串
- 4. 如何匹配兩個字符串之間的任何內容?
- 5. 刪除字符串的其餘部分(如果匹配字)
- 6. 刪除字符串之間的兩個符號之間的字符串
- 7. 刪除兩個字符串之間的隨機字符串android
- 8. 如何匹配兩個字符串之間的所有文字多
- 9. java兩個字符串之間的火花字符匹配
- 10. 匹配兩個相同字符之間的字符串
- 11. 刪除字符串匹配
- 12. 如何刪除字符串中兩個字符之間的字符?
- 13. 匹配兩個不同令牌之間的任何字符串
- 14. 替換/刪除兩個字符之間的字符串
- 15. sed:刪除兩個字符串之間的字符
- 16. 刪除兩個字符串之間的通用字符
- 17. 匹配字符串中兩個索引之間的子串
- 18. 刪除多個字符串中的多個匹配列
- 19. RegExp匹配除兩個保留字符串之外的任何字符串嗎?
- 20. 查找兩個字符串之間不匹配的字母
- 21. Excel:比較2列之間的字符串,如果匹配,修剪/刪除匹配的字符串
- 22. 如何匹配兩個字符串?
- 23. 如何匹配兩個xml字符串?
- 24. 計算兩個字符串之間的匹配數python
- 25. 兩個字符串之間的總不匹配
- 26. 匹配兩個正斜槓之間的特定字符串
- 27. 兩個列表之間的匹配字符串
- 28. REGEX與2個字符串之間的任何字符匹配
- 29. JavaScript ReGeX:替換兩個字符串之間的匹配字符串
- 30. 匹配兩個文件之間的行並標記匹配的字符串
如果我需要循環所有匹配,並且通過所有匹配的每個匹配循環來確定匹配是否嵌入,它會變得很慢。先排序如何? – maasha