数据结构刷题-----1036: 括号匹配

题目描述

PIPI给你一个合法的括号序列,希望跟你按左括号下标递增顺序给出每对括号在序列中的下标。(下标从1开始)

输入

多组数据,请处理到EOF。
对于每组数据,第一行包括一个只包含'(',')'的字符串,保证输入的括号匹配序列合法,长度不超过100000

输出

按左括号下标递增顺序给出每对括号在序列中的下标。

样例输入

(())()()

样例输出

1 4  
2 3  
5 6  
7 8

 思路:

        从字符串后往前遍历,遍历到“)”时,将“)”位置push到栈内;遍历到“(”时,(如栈非空)栈顶即当前“(”对应的“)”的位置序号;(注意:此处结果用pos结构存储,并push到另一个栈内)

        因为要按左括号下标递增顺序,所以利用栈的先进后出的特性,将结果再倒一遍输出来即可。

#include <iostream>
#include<stack>//调用标准库(栈)
#include<cstring>
#include<string> 
using namespace std;

#define MAXSI 100010
struct pos{
	int left;
	int right;
};
char str[MAXSI];

int main( )
{
	int i;
	stack<int>st;
	stack<pos>st2;

	pos zu,zu1;
    while(sc
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
有很多网站可以用来考研数据结构目。其中,一些常见的网站包括leetcode、牛客网和PAT网。这些网站提供了大量的数据结构相关目,可以帮助考研学生进行练习和提高。 在这些网站上,你可以找到各种类型的数据结构目,包括链表、树、图、排序等等。你可以根据自己的需要选择适合的目类型和难度级别来的目的可以有很多,比如为了备考考研的面试、为了参加程序设计竞赛、或者只是为了提高自己的算法能力。不同的目的可能需要选择不同的目类型和难度级别。因此,在选择目时,你可以根据自己的目标来进行筛选和练习。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [《数据结构知识点总结》计算机考研复试应届生求职必备.pdf](https://download.csdn.net/download/liuning940307/31275197)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [了几千道算法,这些我私藏的网站都在这里了!](https://blog.csdn.net/u013486414/article/details/102961171)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值