如果用戶給我一個如(()())
這樣的括號的任意組合的字符串,那麼我需要一個程序來檢查括號的打開和關閉,並且還存儲每個打開和關閉的地址支架分開排列。我該怎麼做?存儲支架的開合地址
-4
A
回答
0
在括號類型是一種類型的情況下,不需要通過增加或減少計數器來保存某些內容。
例子像下面
#include <stdio.h>
#include <stdbool.h>
bool isBalanceBracket(const char *s){
int count = 0;
for(int i = 0; s[i] ; ++i){
if(s[i] == '(')
++count;
else if(s[i] == ')')
if(--count < 0)
return false;
}
return count == 0;
}
int main(void){
const char *test[] = {
"(()())", ")()(", "()))"
};
for(int i = 0; i < sizeof(test)/sizeof(*test); ++i){
if(isBalanceBracket(test[i]))
printf("%s is OK\n", test[i]);
else
printf("%s is NG\n", test[i]);
}
return 0;
}
+0
,但如何我可以存儲括號的開放和閉幕的地址如果用戶輸入(()()),那麼我想爲每個地址1,6 2,3 4,5支架 –
+0
@NavinChauhan爲什麼有必要?我認爲實施一個堆棧會更好。 – BLUEPIXY
+0
我想從最裏面的支架刪除變量 –
相關問題
- 1. 開始塊存儲的地址
- 2. Mongoid:IPv6地址存儲
- 3. sqlite的IP地址存儲
- 4. 存儲獲取和存儲IP地址
- 5. 查找存儲器地址
- 6. 以Java存儲IP地址
- 7. 不同存儲器地址
- 8. 多存儲器地址
- 9. 編輯存儲器地址
- 10. 存儲地址簿記錄
- 11. 將dword存儲到地址
- 12. phpmailer addBCC不存儲地址
- 13. 存儲指針地址在malloced內存
- 14. 基於IP地址的Google存儲訪問地址
- 15. 存儲地址簿聯繫人的kABPersonImageFormatThumbnail
- 16. 繼承存儲地址的派生
- 17. 使用HIERARCHYID存儲客戶的地址
- 18. 存儲IP地址的數據結構
- 19. 添加額外的存儲地址
- 20. 異或存儲在EAX中的地址
- 21. 公共存儲庫的本地分支
- 22. 高VS低內存地址和分支
- 23. 爲什麼地址在合同中存儲時會縮小?
- 24. 「此目標不支持線程本地存儲」,適合#ifdef?
- 25. 實體框架的本地存儲層?
- 26. ESXi 5是否支持存儲VM映像的本地存儲?
- 27. 如何在IntelliJ中顯示連接開口支架和閉合支架的線?
- 28. 字節地址存儲器和字地址
- 29. 將存儲庫合併爲分支
- 30. 交叉存儲庫分支合併git
使用堆棧或遞歸調用跟蹤嵌套的,和一個列表或者類似的跟蹤排序。 – paddy
只需數數,倒計時。 – BLUEPIXY
做任何給我一個打字的代碼 –