نمایش نتایج 1 تا 2 از 2

نام تاپیک: سوال درباره صف و پشته

  1. #1
    کاربر دائمی آواتار mehdidanesh
    تاریخ عضویت
    بهمن 1387
    محل زندگی
    یه جایی زیر سقف آسمون
    پست
    143

    سوال درباره صف و پشته

    پشته می تواند به عنوان ابزاری برای بررسی پرانتزیک عبارت بکار گرفته شود. به این مفهوم که متناظر با هر پرانتز باز، یک پرانتز بسته در عبارت وجود داشته باشد. الگوریتمی بنویسید که عمل بررسی پرانتزی را انجام دهد


    *****

    A+B*((A^B)-(B^A))

    الگوریتم:
    - از ابتدای عبارت (سمت چپ) شروع کن
    - یکی یکی کاراکترها را در پشته بریز (عمل PUSH را انجام بده)
    - اگر پرانتز بسته به پشته اضافه شد، تا زمانی‌که به یک پرانتز باز برسی، عمل POP را انجام بده. (یعنی کاراکترها را از پشته حذف کن)
    - اگر به انتهای عبارت رسیدی، پشته را بررسی کن
    - اگر پرانتزی (چه باز و چه بسته) داخل پشته بود، تعداد پرانتزهای باز و بسته یکی نیست و عبارت شامل خطا است. در غیر اینصورت، تعداد پرانتزهای باز و بسته مساوی است و عبارت صحیح است

  2. #2
    کاربر دائمی آواتار pesar irooni
    تاریخ عضویت
    بهمن 1386
    محل زندگی
    تهران
    سن
    40
    پست
    495

    نقل قول: سوال درباره صف و پشته

    پس سوالت کو؟
    ضمنا نمیخواد کاراکتر ها رو داخل پشته بریزی، همون پرانتز ها کفایت میکنه. و هر وقت به اولین پرانتز بسته رسیدی و پشته خالی بود، کار تمومه، نمیخواد تا انتهای رشته بری.
    این الگوریتم معمولا با الگوریتم محاسبه عبارت ادغام میشه.

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •