括號匹配(乙個已知括號組的完成)

2022-06-30 14:27:11 字數 1073 閱讀 3366

用陣列儲存,目的是找到乙個個完整的括號組,即括號組裡面左括號,右括號相等。對每個括號組進行處理。

首先遍歷一組,記錄有多少個左括號。給每個陣列元素乙個編號,是陣列下標加一。再遍歷陣列,每找到乙個右括號,就往前找乙個左括號。

找到一對後,用乙個二維陣列記錄左右括號的位置。為了避免左括號重複被找,每找到一對,就改變編號成乙個特殊數字。

最後根據輸出的需要,需要將陣列裡的左括號編號從小到大輸出,需要查詢,記錄。需要記錄result_array的值,因為在排序時不斷改變原本陣列的值,所以在最後輸出,需要乙個初始的陣列。

int main()

; int remark_array[8]=;

for(int i=0;i<8;i++) remark_array[i]=i+1;

int sum_left;

int result_array[4][2];

int p=0;

int sort_array[4]=;

int right_now_location;

int left_location;

for(int j=0;j<8;j++)

result_array[p][0]=left_location+1;

result_array[p][1]=right_now_location+1;

p++;

remark_array[left_location]=-1;

remark_array[right_now_location]=-1;}}

int mid_array[4][2];

for(int i=0;i<4;i++)

for(int j=0;j<4;j++)

mid_array[i][j]=result_array[i][j];

int min_num=0;

int min;

for(int i=0;i}

sort_array[i]=min_num;

result_array[min_num][0]=100001;

}for(int i=0;i<4;i++)

}

乙個演算法題 括號匹配問題。

問 給予乙個字串為 請寫出程式求出其有多少對 一般這種問題都是想讓你通過資料結構去處理,仔細回想一下我們學過的資料結構,棧的先進後出是否能處理這個問題?將字串遍歷,遇到左方括號 時將其壓入棧中,遇到右方括號 時取出棧頂元素匹配,並將對數加1,這樣最後我們就求出來能有多少對方括號了。棧的示意圖 流程圖...

括號匹配(兩種演算法的完成)

題目描述 pipi給你乙個合法的括號序列,希望跟你按左括號下標遞增順序給出每對括號在序列中的下標。下標從1開始 輸入多組資料 第一行包括乙個只包含 的字串,保證輸入的括號匹配序列合法,長度不超過100000 輸出按左括號下標遞增順序給出每對括號在序列中的下標。樣例輸入 copy 樣例輸出 copy ...

solr處理括號的乙個bug

這兩天碰到solr的乙個bug,在括號中使用非表示式,造成沒有任何結果命中 檢索到這個已經有人提bug了,indexed documents id 1,userid 0,accountid 1 id 2,userid 0,accountid 1 id 3,userid 1,accountid 1 i...