الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

سؤال حولqueue

بدأه *cpu* في 5 مايو 2008 · 3 رد · 680 مشاهدة · في الأسئلة المجابة
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله و بركاته...

جاء في بالي سؤال وهو كيف يمكنني طباعة عناصر الكيوابتداءا من الخلف الى الامام دون استخدام ستاك او كيو اخرى...

و الحل بسيط لكن واجهتني مشكلة في طريقة عكس اتجاه انتقال البوينر

و من المعروف ان تحرك البوينترات من اليسار الى اليمين في الكيو..فأريد عكس حركتها فتصبح من اليمين الى اليسار

مثلا

a b c d

اريد طباعتها بهذا الشكل

d c b a

#2

هذه طريقة لكن باستخدام مؤشر.

[background=black]
#include <iostream>
#include <queue>
using namespace std;

int main ()
{
  queue<char> qu;
  char  t='a';
  cout<<"Enter :\n";
  while(t!='q')
  {
  cin>>t;
  qu.push(t) ;
  }
   int s=qu.size();
  char* a;
  a=new char[qu.size() ];
  for(int i=0;i<s;i++ )
  {

   a=qu.front();
   qu.pop(); 

  }
  for(int i=s-1;i>=0;i-- )
   cout<<a<<" ";
  return 0;
}

[/background]
tvquran_6.gif

#3

هل تعنى queue إنتا عامله؟ أم الكلاس الستاندرد بتاع السى++ (اللى الأخ فهد إستخدمه)؟

#4

الـqueue لا يعكس الترتيب، المدخل أولا يخرج أولا ف،ABCD تبقى ABCD

بالمقلوب نستخدم ستاك ما يدخل أولا يخرج آخرا...

مواضيع مشابهة