C++లో వెక్టర్ ఎరేస్() ఫంక్షన్

C Lo Vektar Eres Phanksan



శ్రేణి బహుళ డేటాను నిల్వ చేయడానికి ఉపయోగించబడుతుంది మరియు రన్ సమయంలో శ్రేణి యొక్క మూలకాల సంఖ్యను మార్చలేరు. డైనమిక్ అర్రే వలె పనిచేసే వెక్టార్‌ని ఉపయోగించడం ద్వారా ఈ సమస్యను పరిష్కరించవచ్చు. వెక్టార్ నుండి మూలకాన్ని జోడించడానికి మరియు తీసివేయడానికి వెక్టర్ క్లాస్‌లో విభిన్న విధులు ఉన్నాయి. వెక్టార్ యొక్క పరిమాణాన్ని తగ్గించే రన్ సమయంలో వెక్టర్ నుండి ఒకటి లేదా అంతకంటే ఎక్కువ మూలకాలను తొలగించడానికి erase() ఫంక్షన్ ఉపయోగించబడుతుంది. ఈ ఫంక్షన్ యొక్క ఉపయోగాలు ఈ ట్యుటోరియల్‌లో వివరించబడ్డాయి.

సింటాక్స్:

ఈ ఫంక్షన్ యొక్క రెండు రకాల సింటాక్స్ క్రింద ఇవ్వబడ్డాయి.







ఇటరేటర్ ఎరేస్ ( పునరావృత స్థానం ) ;

వెక్టార్ నుండి ఒకే మూలకాన్ని తీసివేయడానికి పైన ఉన్న ఎరేస్() ఫంక్షన్ ఉపయోగించబడుతుంది మరియు ఇది ఒక ఇటరేటర్‌ను అందిస్తుంది మరియు ఇది చివరిగా తొలగించబడిన మూలకం ద్వారా వచ్చిన మూలకాన్ని సూచిస్తుంది.



ఇటరేటర్ ఎరేస్ ( ఇటరేటర్ ప్రారంభ_స్థానం, పునరావృత్తి ముగింపు_స్థానం ) ;

ఈ ఫంక్షన్ యొక్క మొదటి మరియు రెండవ ఆర్గ్యుమెంట్‌లలో పేర్కొన్న స్థానం ఆధారంగా వెక్టార్ నుండి బహుళ మూలకాలను తీసివేయడానికి ఎగువ ఎరేజ్() ఫంక్షన్ ఉపయోగించబడుతుంది.



ముందస్తు అవసరం:

ఈ ట్యుటోరియల్ యొక్క ఉదాహరణలను తనిఖీ చేసే ముందు, మీరు సిస్టమ్‌లో g++ కంపైలర్ ఇన్‌స్టాల్ చేయబడిందో లేదో తనిఖీ చేయాలి. మీరు విజువల్ స్టూడియో కోడ్‌ని ఉపయోగిస్తుంటే, ఎక్జిక్యూటబుల్ కోడ్‌ని సృష్టించడానికి C++ సోర్స్ కోడ్‌ను కంపైల్ చేయడానికి అవసరమైన పొడిగింపులను ఇన్‌స్టాల్ చేయండి. ఇక్కడ, విజువల్ స్టూడియో కోడ్ అప్లికేషన్ C++ కోడ్‌ను కంపైల్ చేయడానికి మరియు అమలు చేయడానికి ఉపయోగించబడింది. వెక్టార్‌లో మూలకం(ల)ను చొప్పించడానికి ఎరేస్() ఫంక్షన్ యొక్క వివిధ ఉపయోగాలు క్రింద చూపబడ్డాయి.





ఉదాహరణ-1: మొదటి మూలకం మూలకాన్ని తీసివేయండి

వెక్టార్ ప్రారంభం నుండి మూలకాన్ని తీసివేయడానికి క్రింది కోడ్‌తో C++ ఫైల్‌ను సృష్టించండి. కోడ్‌లో స్ట్రింగ్ విలువల వెక్టర్ ఉపయోగించబడింది. వెక్టర్ యొక్క విలువలు వెక్టర్ నుండి మొదటి మూలకాన్ని తొలగించే ముందు మరియు తర్వాత ఒక పరామితితో erase() ఫంక్షన్‌ని ఉపయోగించి ముద్రించబడ్డాయి.

//అవసరమైన లైబ్రరీలను చేర్చండి

# చేర్చండి

# చేర్చండి

ఉపయోగించి నేమ్‌స్పేస్ std ;

//వెక్టార్ విలువలను ప్రదర్శించండి

శూన్యం డిస్ప్లే_వెక్టర్ ( వెక్టర్ < స్ట్రింగ్ > పండ్లు )

{

//కౌంటర్‌ని ప్రారంభించండి

int కౌంటర్ = 1 ;

//లూప్ ఉపయోగించి వెక్టర్ యొక్క మూలకాలను పునరావృతం చేయండి మరియు ముద్రించండి

కోసం ( దానంతట అదే అతను = పండ్లు. ప్రారంభం ( ) ; అతను ! = పండ్లు. ముగింపు ( ) ; అతను ++ )

{

//మూలకాలు చివరి మూలకం కాదా అని తనిఖీ చేయండి

ఉంటే ( కౌంటర్ ! = పండ్లు. పరిమాణం ( ) )

కోట్ << * అతను << ',' ;

లేకపోతే

కోట్ << * అతను ;

//కౌంటర్‌ను 1 పెంచండి

కౌంటర్ ++ ;

}

కోట్ << endl ;

}

int ప్రధాన ( శూన్యం ) {

//స్ట్రింగ్ డేటా యొక్క వెక్టర్‌ను ప్రకటించండి

వెక్టర్ < స్ట్రింగ్ > పండ్లు = { 'నారింజ' , 'అరటి' , 'మామిడి' , 'జాక్ ఫ్రూట్' , లిచీ } ;

//వెక్టార్ యొక్క ప్రస్తుత విలువలను ముద్రించండి

కోట్ << 'తొలగించే ముందు వెక్టర్ విలువలు:' << endl ;

డిస్ప్లే_వెక్టర్ ( పండ్లు ) ;

//వెక్టార్ నుండి మొదటి మూలకాన్ని తీసివేయండి

పండ్లు. తుడిచివేయండి ( పండ్లు. ప్రారంభం ( ) ) ;

//తొలగించిన తర్వాత వెక్టర్ యొక్క ప్రస్తుత విలువలను ముద్రించండి

కోట్ << ' \n తీసివేసిన తర్వాత వెక్టర్ విలువలు: ' << endl ;

డిస్ప్లే_వెక్టర్ ( పండ్లు ) ;

తిరిగి 0 ;

}

అవుట్‌పుట్:

పై కోడ్‌ని అమలు చేసిన తర్వాత క్రింది అవుట్‌పుట్ కనిపిస్తుంది.



ఉదాహరణ-2: బహుళ మూలకాలను తీసివేయండి

erase() ఫంక్షన్‌ని ఉపయోగించి వెక్టర్ నుండి బహుళ మూలకాలను తీసివేయడానికి క్రింది కోడ్‌తో C++ ఫైల్‌ను సృష్టించండి. కోడ్‌లో పూర్ణాంక విలువల వెక్టర్ ఉపయోగించబడింది. వెక్టార్ నుండి తీసివేయబడిన మూలకాల పరిధిని సెట్ చేయడానికి ఇక్కడ రెండు ఇటరేటర్లు ఉపయోగించబడ్డాయి. వెక్టార్ నుండి బహుళ మూలకాలను తీసివేయడానికి ఎరేస్() ఫంక్షన్ రెండు పారామితులతో ఉపయోగించబడింది.

//అవసరమైన లైబ్రరీలను చేర్చండి

# చేర్చండి

# చేర్చండి

ఉపయోగించి నేమ్‌స్పేస్ std ;

//వెక్టార్‌ని ప్రదర్శించు

శూన్యం డిస్ప్లే_వెక్టర్ ( వెక్టర్ < int > సంఖ్యలు )

{

//లూప్ ఉపయోగించి వెక్టర్ విలువలను ముద్రించండి

కోసం ( దానంతట అదే అతను = సంఖ్యలు. ప్రారంభం ( ) ; అతను ! = సంఖ్యలు. ముగింపు ( ) ; అతను ++ )

కోట్ << * అతను << '' ;

//కొత్త లైన్ జోడించండి

కోట్ << ' \n ' ;

}

int ప్రధాన ( ) {

//పూర్ణాంక డేటా యొక్క వెక్టర్‌ను ప్రకటించండి

వెక్టర్ < int > intArray { 678 , 435 , 960 , 231 , 800 , 387 , 634 , 267 , 409 , 294 } ;

//వెక్టార్ యొక్క ప్రస్తుత విలువలను ముద్రించండి

కోట్ << 'తొలగించే ముందు వెక్టర్ విలువలు:' << endl ;

డిస్ప్లే_వెక్టర్ ( intArray ) ;

//వెక్టార్ నుండి మూలకాల పరిధిని తీసివేయడానికి రెండు ఇటరేటర్‌లను ప్రకటించండి

వెక్టర్ < int > :: పునరావృతం చేసేవాడు startEle, endEle ;

//ఇటరేటర్‌ను మొదటి స్థానానికి సెట్ చేయండి

వాటిని ప్రారంభించండి = intArray. ప్రారంభం ( ) ;

//ప్రారంభ ఇటరేటర్‌ను 2 ద్వారా పెంచండి

ముందుకు ( వాటిని ప్రారంభించండి, 2 ) ;

//ఇటరేటర్‌ను చివరి స్థానానికి సెట్ చేయండి

endEle = intArray. ముగింపు ( ) ;

//ముగింపు పునరావృత్తిని 3తో తగ్గించండి

ముందుకు ( endEle, - 3 ) ;

//మూలకాల పరిధిని తీసివేయండి

intArray. తుడిచివేయండి ( startEle, endEle ) ;

//తొలగించిన తర్వాత వెక్టర్ యొక్క ప్రస్తుత విలువలను ముద్రించండి

కోట్ << ' \n తీసివేసిన తర్వాత వెక్టర్ విలువలు: ' << endl ;

డిస్ప్లే_వెక్టర్ ( intArray ) ;

తిరిగి 0 ;

}

అవుట్‌పుట్:

పై కోడ్‌ని అమలు చేసిన తర్వాత క్రింది అవుట్‌పుట్ కనిపిస్తుంది. ఇటరేటర్ల పరిధి ప్రకారం, వెక్టర్ యొక్క 3వ స్థానం నుండి 7వ స్థానం వరకు ఉన్న మూలకాలు తీసివేయబడ్డాయి.

ఉదాహరణ-3: నిర్దిష్ట అంశాలను తీసివేయండి

erase() ఫంక్షన్‌ని ఉపయోగించి వెక్టర్ యొక్క నిర్దిష్ట మూలకాలను తీసివేయడానికి క్రింది కోడ్‌తో C++ ఫైల్‌ను సృష్టించండి. కోడ్‌లో 7 పూర్ణాంకాల మూలకాల వెక్టర్ ప్రకటించబడింది. తరువాత, వెక్టార్ మూలకాలను పునరావృతం చేయడానికి మరియు 5 ద్వారా భాగించబడని వెక్టర్ నుండి ఆ మూలకాలను తీసివేయడానికి 'ఫర్' లూప్ ఉపయోగించబడింది.

//అవసరమైన లైబ్రరీలను చేర్చండి

# చేర్చండి

# చేర్చండి

ఉపయోగించి నేమ్‌స్పేస్ std ;

int ప్రధాన ( )

{

//పూర్ణాంక డేటా యొక్క వెక్టర్‌ను ప్రకటించండి

వెక్టర్ < int > సంఖ్యలు = { 78 , నాలుగు ఐదు , 67 , 25 , 98 , 75 , 52 } ;

కోట్ << 'తొలగించే ముందు వెక్టర్ విలువలు: \n ' ;

కోసం ( int స్థిరంగా & i : సంఖ్యలు ) {

కోట్ << i << '' ;

}

కోట్ << endl ;

//5చే భాగించబడని సంఖ్యలను వెక్టార్ నుండి తీసివేయండి

కోసం ( దానంతట అదే అతను = సంఖ్యలు. ప్రారంభం ( ) ; అతను ! = సంఖ్యలు. ముగింపు ( ) ; అతను ++ )

{

//సంఖ్యను 5తో భాగించవచ్చో లేదో తనిఖీ చేయండి

ఉంటే ( * అతను % 5 ! = 0 )

{

//ఇటరేటర్ ఆధారంగా మూలకాన్ని తీసివేయండి

సంఖ్యలు. తుడిచివేయండి ( అతను -- ) ;

}

}

కోట్ << 'తొలగించిన తర్వాత వెక్టర్ యొక్క విలువలు: \n ' ;

కోసం ( int స్థిరంగా & i : సంఖ్యలు ) {

కోట్ << i << '' ;


}


కోట్ << endl ;


తిరిగి 0 ;

}

అవుట్‌పుట్:

పై కోడ్‌ని అమలు చేసిన తర్వాత క్రింది అవుట్‌పుట్ కనిపిస్తుంది. వెక్టార్ 5 ద్వారా మాత్రమే విభజించదగిన మూలకాలను కలిగి ఉందని అవుట్‌పుట్ చూపిస్తుంది మరియు ఇతర మూలకాలు తీసివేయబడ్డాయి.

ముగింపు:

వెక్టార్ మూలకాలను తొలగించడానికి ఈ ట్యుటోరియల్‌లో erase() ఫంక్షన్ యొక్క వివిధ ఉపయోగాలు చూపబడ్డాయి. వెక్టర్ నుండి మూలకాన్ని తీసివేయడానికి C++ అనేక ఇతర విధులను కలిగి ఉంది మరియు ఆ ఫంక్షన్‌లు ఒకే మూలకాన్ని ఒకేసారి తీసివేయగలవు. కానీ వెక్టర్ ఎరేస్() ఫంక్షన్‌ని ఉపయోగించడం ద్వారా వెక్టర్ యొక్క ఏదైనా స్థానం నుండి ఒకే మరియు బహుళ మూలకాలు రెండింటినీ తొలగించవచ్చు.