簡介:各類型基金產(chǎn)品及評價體系介紹,,2,,3,目錄,形形色色的基金基金的投資技巧好基金的標(biāo)準(zhǔn)選擇適合你的基金,4,形形色色的基金,5,你聽說過哪些基金名稱,公司型基金/信托型基金/契約型基金封閉式基金/開放式基金積極型基金/被動型基金公募基金與私募基金股票基金/債券基金/混合基金/貨幣市場基金其它ETF傘形基金等,6,基金的分類,根據(jù)不同標(biāo)準(zhǔn)劃分不同種類基金單位是否可增加或贖回開放式-封閉式組織形態(tài)的不同公司型基金(依據(jù)公司法)和契約型基金(基金契約)投資風(fēng)險和收益的不同成長型、收入型、平衡型投資對象的不同股票基金、債券基金、貨幣市場基金、期貨基金,7,什么是封閉式基金,發(fā)行份額固定,在交易所上市交易買賣特點(diǎn)有固定的期限在期限內(nèi)不能直接贖回,需通過上市交易套現(xiàn),交易價格由市場供求關(guān)系決定,現(xiàn)金分紅,交易手續(xù)費(fèi)成交金額的025%基金單位資產(chǎn)凈值每周至少公告一次基金二級市場價格常常與基金的單位凈值不一致,產(chǎn)生折價交易現(xiàn)象,8,什么是開放式基金,開放式基金基金發(fā)行規(guī)模不固定,可以隨時發(fā)行新的份額以滿足投資者的投資需要,投資者可以隨時申購贖回基金單位;特色場外交易市場買賣,價格依據(jù)基金資產(chǎn)凈值而定分紅收益轉(zhuǎn)紅利或轉(zhuǎn)份額各基金申購/贖回費(fèi)不同,9,開放式基金的優(yōu)勢,贖回機(jī)制,基金管理公司,更加勤勉地理財(cái),提供更多的服務(wù),,,,,,贖回,更重視投資人利益,投資者,10,美國開放式基金超常規(guī)發(fā)展,11,基金分類-按投資標(biāo)的,股票基金債券基金貨幣基金指數(shù)基金混合型基金衍生證券投資基金,12,,13,特別基金-保本基金,投資者到期時至少能夠獲得投資本金或一定百分比回報的基金保本基金的運(yùn)作––通過將大部分資金投資于與到期日一致的債券,為投資者提供保證回報,其余部分則投資于股票、衍生工具以提高基金回報特點(diǎn)在鎖定下跌風(fēng)險的同時有機(jī)會獲得潛在回報注意事項(xiàng)––同期贖回不保本––適合中長線的穩(wěn)健投資者––比較機(jī)會成本,14,特別基金-傘形基金,多個基金依據(jù)一個共同的法律文件設(shè)立傘下各個子基金具有相對獨(dú)立型,投資者可以方便地進(jìn)行基金之間的轉(zhuǎn)換傘本身并不是一個獨(dú)立的基金,可以被看作裝作裝“子基金子基金”的“藍(lán)子”或“外殼”,15,特別基金對沖基金,又稱避險基金或套利基金特色––要求較高的投資額––投資靈活,可以買空賣空,投資于衍生工具––操作不透明––以取得絕對回報為目標(biāo)––較少監(jiān)管代表人物索羅斯(從1萬到4200萬),16,特別基金-上市開放式基金LOF,是一種可以同時在場外市場基金基金份額申購、贖回,在場內(nèi)進(jìn)行基金份額交易并通過份額轉(zhuǎn)托管機(jī)制將場外市場與場內(nèi)市場有機(jī)地聯(lián)系在一起的一種基金運(yùn)作方式特點(diǎn)在保留場外交易優(yōu)勢的同時,開辟了場內(nèi)交易,可以進(jìn)行跨市場交易場內(nèi)交易成本低,可以進(jìn)行連續(xù)交易,不會出現(xiàn)大幅折價交易現(xiàn)象,17,特別基金ETFS(交易所基金),指數(shù)型基金基金份額是一攬子股票場內(nèi)實(shí)時交易,兩級市場進(jìn)行套利適合大型機(jī)構(gòu)投資者成本低廉,18,開放式基金的投資成本,購買費(fèi)用-前端費(fèi)用-后端費(fèi)用運(yùn)作成本-管理費(fèi)-托管費(fèi)-交易費(fèi)用宣傳費(fèi)用,19,基金能提供哪些服務(wù),紅利自動轉(zhuǎn)投資基金轉(zhuǎn)換電話、傳真、互聯(lián)網(wǎng)交易定期定額投資后端收費(fèi)投資報告,20,基金的投資技巧,21,基金投資四大風(fēng)格,基金經(jīng)理有不同的投資風(fēng)格價值型投資成長型投資勢頭與熱點(diǎn)投資,22,價值型投資風(fēng)格,注重股票內(nèi)在價值的挖掘,賣入價值被低估的股票,賣出價值高估的股票。常常以市盈率、市凈率衡量股票的價值是一種比較保守的投資方法,23,成長型投資風(fēng)格,側(cè)重于股票的未來成長潛力通常會投資于小盤股、科技股風(fēng)險較大,是一種進(jìn)取型投資,24,熱點(diǎn)投資風(fēng)格,追漲殺跌,行業(yè)、熱點(diǎn)輪動投資實(shí)時關(guān)注市場熱點(diǎn)風(fēng)險非常大,也能獲得高收益,25,如何進(jìn)行基金的投資,基金投資類似找對象-沒有最好的基金只有合適的基金不但要看基金的表現(xiàn),更主要是考察基金風(fēng)險-如同選購汽車,不光要看它是否跑得快,還要看剎車靈不靈不但要看基金本身的情況,而且要注意基金公司的情況注意基金變化情況投資成本也要受到重視,26,投資之前注意什么要素,未來的收入和支出能夠承受多大的損失預(yù)期投資多長時間年齡問題(100-年齡=合適股票投資比例)基金投資目標(biāo)與自己的投資目標(biāo)仔細(xì)閱讀招募說明書,27,基金投資方法(一),一次性購買法把所有資金一次性購買一只基金,長期持有簡單省事,但受購買時機(jī)限制,可能出現(xiàn)較大虧損,28,基金投資方法(二),固定比例投資法按固定的投資比例分散買進(jìn)幾只不同種類的基金,定期進(jìn)行調(diào)整。當(dāng)某類基金價格漲得較高時,賣出該基金,補(bǔ)進(jìn)價格下跌的基金品種保持低成本狀態(tài),使投資者真正擁有賺來的錢分散投資,避免單一基金的投資風(fēng)險,29,基金投資方法(三),平均成本投資法每隔一段固定的時間(如一個月或半年)以固定的金額去購買某種基金。當(dāng)價格較低時,可以買到較多的基金份額;而當(dāng)價格較高時,只能買到較少的份額,長此以往可以降低所購買基金的單位平均成本要求持之以恒并具有長期穩(wěn)定的資金來源要求定額定期投資,30,基金投資方法(四),實(shí)時進(jìn)出投資法類似個股短期波段操作,賺取差價要求對市場走勢有一定的預(yù)測能力適合指數(shù)型基金,31,基金的衡量標(biāo)準(zhǔn),32,收益(相對業(yè)績比較,絕對回報)風(fēng)險控制(具體資產(chǎn)配置,個券選擇,基金管理人的聲譽(yù))運(yùn)作透明度和售后服務(wù)(持有人監(jiān)控,延伸服務(wù),投資咨詢),衡量基金業(yè)績的標(biāo)準(zhǔn),33,,衡量收益三要素相對業(yè)績(用證券市場指數(shù)和業(yè)績比較基準(zhǔn)進(jìn)行衡量)絕對回報(收益是盈是虧,是高是低)權(quán)威基金評級機(jī)構(gòu)的排名水平(與同期運(yùn)作其他基金相比較,優(yōu)中擇優(yōu))善于利用業(yè)績排名認(rèn)識基金,全面認(rèn)識基金收益情況,34,,通過恰當(dāng)?shù)姆纸M,盡可能地消除由于類型差異而對基金經(jīng)理人相對業(yè)績所造成的不利影響。分組比較比不分組的比較更能給出有意義的評價結(jié)果。常以排序、百分位、星級、字母給出目前仍是最普遍、最直觀、最受媒體歡迎的方法,基金比較衡量分組比較法,35,,基準(zhǔn)比較法是通過給被評價的基金,定義一個適當(dāng)?shù)幕鶞?zhǔn)組合,比較基金收益率與與基準(zhǔn)組合收益率的差異,對基金表現(xiàn)加以衡量一個良好的基準(zhǔn)組合應(yīng)具有如下4個方面特征明確的組成成份;可投資性;可衡量性;預(yù)先確定性,基金比較衡量基準(zhǔn)比較法,36,,基金表現(xiàn)常常與所承擔(dān)的風(fēng)險成正相關(guān)。投資者喜歡收益,但不喜歡風(fēng)險。表現(xiàn)好的基金可能是由于所承擔(dān)的風(fēng)險較高使然,并不表明基金經(jīng)理在投資上有較高的投資,而表現(xiàn)差的基金可能是風(fēng)險較小,也并不必然表明基金經(jīng)理的投資技巧差強(qiáng)人意風(fēng)險調(diào)整衡量指標(biāo)的基本思路就是通過對收益加以風(fēng)險調(diào)整,得到一個可以同時對收益與風(fēng)險加以考慮的綜合指標(biāo),以期能夠排除風(fēng)險因素對績效評價的不利影響,基金比較衡量收益和風(fēng)險共同考慮,37,,LIPPER––創(chuàng)建于創(chuàng)建于1973年,1998年為路透集團(tuán)收購––特色創(chuàng)建了包括85個基金類別指數(shù)作為對基金評價的基準(zhǔn)MORNINGSTAR(晨星)––創(chuàng)建于1985年––特色基金評級系統(tǒng)SPMACROPAL––創(chuàng)建于創(chuàng)建于1985年,1997被標(biāo)普公司收購––特色同時對基金管理公司評級,國際權(quán)威的基金評級機(jī)構(gòu),38,,深圳晨星資訊銀河證券基金研究中心分類及依據(jù)以招募說明書中資產(chǎn)配置比例、業(yè)績比較基準(zhǔn)以及投資目標(biāo)為基礎(chǔ);分為股票型基金、配置型基金、債券型基金、保本型、貨幣型基金等大類評級包括排名(最近一周、最近一月、最近三月、最近半年、最近一年、今年以來等)、基金評級(五星級基金為最佳)每周一公布(三大證券報),國內(nèi)的基金評級機(jī)構(gòu),39,,舉例晨星的貨幣市場基金排名,40,選擇適合你的基金,41,依照風(fēng)險高低,基金可分為股票型基金(追求資產(chǎn)長期增值,以成長型股票為主,例如博時精選,華安180)混合型基金(兼有股票的成長和債券的穩(wěn)健,如南方穩(wěn)?。﹤突穑ǐ@取穩(wěn)定的利息收入和超額的差價收入,某些藍(lán)籌股票基金也可列入,如南方寶元債券型基金)貨幣市場基金(優(yōu)于銀行一年定期存款,方便現(xiàn)金管理,如華安現(xiàn)金富利基金)人生不同階段,所能承受的風(fēng)險和投資需求有差異,所以適合不同的基金。,基金品種繁多,應(yīng)根據(jù)自身需要選擇,42,根據(jù)自身情況,明確自己的投資目標(biāo)和計(jì)劃青年期(勇于冒險)25-35歲股票型基金中年期(鞏固成果)35-50歲混合型基金、債券型基金老年期(安渡晚年)50以后債券型基金現(xiàn)金管理貫穿始終貨幣型基金(不同階段,不同比例)可根據(jù)年齡、收入、性格等具體情況,選擇合適品種,并對不同類型基金進(jìn)行組合投資,確立投資目標(biāo),確立投資基金的品種,43,怎樣選基金,選基金實(shí)際上就是選管家基金公司。好的理財(cái)管家-為您帶來更高的收益;-值得信賴,把投資的煩惱全部交給他;-您可以專心做您的事業(yè)。,44,選擇優(yōu)秀的基金管理公司,1)公司的資產(chǎn)管理規(guī)模2)公司管理的基金的總體業(yè)績表現(xiàn)3)基金公司的研究力量4)基金公司的市場形象和口碑5)基金公司對投資人服務(wù)的質(zhì)量6)基金公司高層管理人員的背景資歷以及員工的整體素質(zhì),45,如何選擇基金管理公司,第一,規(guī)范的管理和運(yùn)作規(guī)范的管理和運(yùn)作是基金管理公司必須具備的基本要素第二,歷年來的經(jīng)營業(yè)績基金管理公司的內(nèi)部管理及基金經(jīng)理人的投資經(jīng)驗(yàn)、業(yè)務(wù)素質(zhì)和管理方法,都會影響到基金的業(yè)績表現(xiàn)第三,市場形象、服務(wù)的質(zhì)量和水平基金管理公司的市場形象、為投資者提供服務(wù)的質(zhì)量和水平,也是選擇基金管理公司時可以參考的因素。比如相關(guān)費(fèi)用、申購與贖回的方便程度以及基金管理公司的服務(wù)質(zhì)量等。,46,投資就有風(fēng)險,把風(fēng)險控制在自己能承受的范圍內(nèi)回避風(fēng)險眼光長遠(yuǎn),切莫盲從多認(rèn)識,多了解,投資是一門學(xué)問成本概念(機(jī)會成本,交易成本,風(fēng)險成本),購買基金的原則一正視風(fēng)險,47,簡單判斷別人恐懼我貪婪,別人貪婪我恐懼看大勢,低點(diǎn)吸納適度波段操作,但要認(rèn)清形勢,原則二選擇合適時機(jī),48,定期定額計(jì)劃熱錢莫投(閑置期一年以上,貨幣基金除外)虧損了怎么辦,原則三細(xì)水長流,49,新基金好還是老基金好如何選時如何看待基金的歷史業(yè)績和現(xiàn)在表現(xiàn)指數(shù)基金好不好,購買基金的幾個常見問題,
下載積分: 4 賞幣
上傳時間:2024-01-06
頁數(shù): 49
大?。?0.23(MB)
子文件數(shù):
簡介:棧和隊(duì)列,棧的定義和基本運(yùn)算/順序棧/鏈棧/隊(duì)列的定義和基本運(yùn)算/順序隊(duì)列/鏈?zhǔn)疥?duì)列/實(shí)訓(xùn),唐懿芳,數(shù)據(jù)結(jié)構(gòu)與算法,,目錄,CONTENTS,,,棧的定義和基本運(yùn)算,1、棧的定義2、棧的基本運(yùn)算,01,數(shù)據(jù)結(jié)構(gòu)與算法,第一節(jié)棧的定義和基本運(yùn)算,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,生活中的棧與隊(duì)列棧和隊(duì)列是特殊的線性表?xiàng)Ec隊(duì)列的特征LIFOLASTINFIRSTOUTFIFOFIRSTINFIRSTOUT,棧的定義,堆棧簡稱為棧,是限定只能在表的一端進(jìn)行插入和刪除操作的線性表。在表中,允許插入和刪除的一端稱作“棧頂”,另一端稱作“棧底”。通常將元素插入棧頂?shù)牟俜Q作為“入?!保ㄟM(jìn)?;驂簵#?,稱刪除棧頂元素的操作為“出?!?棧底,棧頂,入棧,出棧,圖31堆棧,,,,,A1,A2,AN,,,,第一節(jié)棧的定義和基本運(yùn)算,棧的基本運(yùn)算,堆棧的基本運(yùn)算如下。1STACKINIT初始化堆棧。2STACKEMPTYS判定棧S是否為空。3STACKLENGTHS求堆棧S的長度。4GETTOPS獲取棧頂元素的值。5PUSHS,E將元素E進(jìn)棧。6POPS,出棧(刪除棧頂元素)。,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第一節(jié)棧的定義和基本運(yùn)算,棧的存儲結(jié)構(gòu),兩種存儲結(jié)構(gòu)1順序棧采用順序結(jié)構(gòu)存儲2鏈棧采用鏈?zhǔn)浇Y(jié)構(gòu)存儲,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,順序棧,1、順序棧的存儲結(jié)構(gòu)3、順序棧的案例2、順序棧的基本運(yùn)算,02,數(shù)據(jù)結(jié)構(gòu)與算法,第二節(jié)順序棧,順序棧的存儲結(jié)構(gòu),,MAXSIZE1,DEFINEMAXSIZE堆??赡苓_(dá)到的最大長度TYPEDEFSTRUCT{ELEMENTTYPEELEMMAXSIZEINTTOP/棧頂位置/}SEQSTACK,棧底,棧頂,,,,,A0,A1,AN1,,,備用空間,棧滿和棧空的條件是什么,棧滿TOPMAXSIZE1??誘OP1,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,SEQSTACKSTACKINIT{SEQSTACKSSTOP1RETURNS},,順序棧的基本運(yùn)算,,初始化堆棧STACKINIT,,,INTSTACKEMPTYSEQSTACKS{RETURNSTOP1},,判定棧S是否為空STACKEMPTYS,,,INTSTACKLENGTHSEQSTACKS{RETURNSTOP1},,求堆棧S的長度STACKLENGTHS,,,ELEMENTTYPEGETTOPSEQSTACKS{IFSTACKEMPTYS/空棧/RETURNNILRETURNSELEMSTOP},,獲取棧頂元素的值GETTOPS,,,VOIDPUSHSEQSTACKS,ELEMENTTYPEE{IFSTOPMAXSIZE1/棧滿/PRINTF“FULL”ELSE{STOPSELEMSTOPE}},,進(jìn)棧PUSHS,E,,,ELEMENTTYPEPOPSEQSTACKS{IFSTOP1/棧空/RETURNNIL/返回空值/ELSE{ESELEMSTOPSTOPRETURNE}},,出棧POPS,,第二節(jié)順序棧,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,順序棧案例1,【例1】假設(shè)有兩個棧共享一個一維數(shù)組空間0,MAXSIZE-1,其中一個棧用數(shù)組的第0單元(元素)作為棧底,另一棧用數(shù)組的第MAXSIZE-1號單元(元素)作為棧底(即兩個堆棧從兩端向中間延伸),其對應(yīng)的類型描述如下DEFINEMAXSIZE堆??赡苓_(dá)到的最大長度TYPEDEFSTRUCT{ELEMENTTYPEELEMMAXSIZEINTTOP1,TOP2/棧頂位置/}SHARESTACK,第二節(jié)順序棧,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,順序棧案例2,,則棧1的棧頂表示為STOP1,棧2的棧頂表示為STOP2棧1的進(jìn)棧操作使得棧頂1右(后)移,即STOP1,棧2進(jìn)棧操作使得棧頂2左(前)移,即STOP1棧滿時兩個棧頂相鄰,即STOP11==STOP2。,圖32共享堆棧,,,,,,,,棧1,,,棧頂2,,A1,AN,B1,BM,棧2,棧底1,,棧底2,0,,MAXSIZE1,,棧頂1,第二節(jié)順序棧,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,順序棧案例3進(jìn)棧,,VOIDPUSHSHARESTACKS,ELEMENTTYPEE,INTI/將元素E壓入棧II1,2/{IFSTOP11STOP2/棧滿/PRINTF“FULL”ELSE{IFI1{STOP1SELEMSTOP1E}ELSE{STOP2SELEMSTOP2E}}},第二節(jié)順序棧,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,順序棧案例4出棧,,ELEMENTTYPEPOPSHARESTACKS,INTI/棧II1,2出棧/{IFI1IFSTOP11/棧1空/RETURNNILELSE{ESELEMSTOP1STOP1RETURNE}IFI2IFSTOP2MAXSIZE/棧2空/RETURNNILELSE{ESELEMSTOP2STOP2RETURNE}},第二節(jié)順序棧,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,鏈棧,1、棧的鏈?zhǔn)酱鎯Y(jié)構(gòu)2、鏈棧的基本運(yùn)算,03,數(shù)據(jù)結(jié)構(gòu)與算法,第三節(jié)鏈棧,鏈棧的存儲結(jié)構(gòu),,DEFINEMAX_SIZE100//設(shè)置最大元素個數(shù)TYPEDEFINTELEMTYPETYPEDEFSTRUCTSNODE{ELEMENTTYPEDATASTRUCTSNODENEXT}STACKNODETYPEDEFSTACKNODELINKSTACK/LINKSTACK為指向STACKNODE的指針類型/,,圖36鏈棧,棧頂,,,,,,,,,,,A1,AN,AN1,棧底,DATA,NEXT,Λ,S,,,,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第三節(jié)鏈棧,鏈棧的基本操作,,1.棧初始化棧的初始化實(shí)現(xiàn)比較簡單,算法如下LINKSTACKSTACKINIT{LINKSTACKSLINKSTACKMALLOCSIZEOFSTACKNODESNEXT0RETURNS}/STACKINIT/2.判斷棧是否為空在判斷棧是否為空時,只需將棧頂指針SNEXT值與NULL相比即可,算法實(shí)現(xiàn)如下INTSTACKEMPTYLINKSTACKS{RETURNSNEXTNULL}/STACKEMPTY/,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第三節(jié)鏈棧,鏈棧的基本操作,,3.求棧的長度INTSTACKLENGTHLINKSTACKS{LINKSTACKPSNEXTINTLENGTH0WHILEP{LENGTHPPNEXT}RETURNLENGTH}/STACKLENGTH/4.進(jìn)棧操作//插入元素E為新的棧頂元素VOIDPUSHLINKSTACKS,INTE{LINKSTACKPSTACKNODEMALLOCSIZEOFSTACKNODEPDATAEPNEXTSNEXT//如圖②把當(dāng)前的棧頂元素賦值給新結(jié)點(diǎn)的直接后繼SNEXTP//如圖③將新的結(jié)點(diǎn)P賦值給棧頂指針}/PUSH/,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第三節(jié)鏈棧,鏈棧的基本操作,,5.出棧操作//若棧不空,則刪除棧頂元素,用E返回值INTPOPLINKSTACKS{IFSTACKEMPTYS/棧空/RETURNNIL/返回空值/ELSE{LINKSTACKPSNEXT/如圖①將棧頂結(jié)點(diǎn)賦值給P/INTE0SNEXTPNEXT/如圖②使得棧頂指針下移1位,指向后一結(jié)點(diǎn)/EPDATAFREEP/釋放結(jié)點(diǎn)P/RETURNE}}/POP/,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第三節(jié)鏈棧,鏈棧的基本操作,,6.獲取棧頂元素根據(jù)棧頂指針S,可以直接獲取最后入棧的元素。應(yīng)該注意的是,在進(jìn)行讀取之前,也要進(jìn)行??諜z查。相關(guān)的算法實(shí)現(xiàn)如下INTGETTOPLINKSTACKS{IFSTACKEMPTYSRETURNNILRETURNSNEXTDATA}/GETTOP/,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,隊(duì)列,1、隊(duì)列的定義3、隊(duì)列的存儲結(jié)構(gòu)2、隊(duì)列的基本運(yùn)算,04,數(shù)據(jù)結(jié)構(gòu)與算法,第4節(jié)隊(duì)列,隊(duì)列的定義,,隊(duì)列簡稱為隊(duì),是限定只能在表的一端作插入運(yùn)算、在另一端作刪除運(yùn)算的線性表;在表中,允許插入的一端稱作“隊(duì)尾”,允許刪除的另一端稱作“隊(duì)首”(或“隊(duì)頭”);通常將元素插入隊(duì)尾的操作稱作為入隊(duì)列(或入隊(duì)),稱刪除隊(duì)首元素的操作為出隊(duì)列(或出隊(duì))。,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第4節(jié)隊(duì)列,隊(duì)列的基本運(yùn)算,,,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,隊(duì)列的基本運(yùn)算如下。1INITQUEUE初始化隊(duì)列。2QUEUEEMPTYQ判定隊(duì)列Q是否為空。3QUEUELENGTHQ求隊(duì)列Q的長度。GETHEADQ獲取隊(duì)列Q隊(duì)首元素的值。5ADDQUEUEQ,E將元素E入隊(duì)。6DELETEQUEUEQ刪除隊(duì)首元素。,第4節(jié)隊(duì)列,隊(duì)列的存儲結(jié)構(gòu),,兩種結(jié)構(gòu)1順序隊(duì)列采用順序結(jié)構(gòu)存儲2鏈?zhǔn)疥?duì)列采用鏈?zhǔn)浇Y(jié)構(gòu)存儲,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,順序隊(duì)列,1、隊(duì)列的順序存儲結(jié)構(gòu)2、順序隊(duì)列的基本運(yùn)算,05,數(shù)據(jù)結(jié)構(gòu)與算法,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)1,,DEFINEMAXSIZEN隊(duì)列可能達(dá)到的最大長度NTYPEDEFSTRUCT{ELEMENTTYPEELEMMAXSIZEINTFRONT,REAR/隊(duì)首、隊(duì)尾指示器/}QUEUE,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)2,,,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,,,圖312隊(duì)列操作,,,,,,,,,,,,,A,B,C,E,REAR4,,,,,,,D,FRONT1,,,,,B,C,E,REAR4,,,,,,,D,FRONT0,,,,,FRONTREAR4,,,,,,FRONTREAR1,,A空隊(duì),BA,B,C,D,E入隊(duì),C出隊(duì)1次,D出隊(duì)4次,隊(duì)滿和隊(duì)空的條件是什么,隊(duì)空FRONTREAR隊(duì)滿REARMAXSIZE1,,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)3,,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,當(dāng)REARMAXSIZE1時,隊(duì)列為滿,如果再加入新元素,就會產(chǎn)生“溢出“。但是這種“溢出“并不是真正的溢出,在數(shù)組的前端還可能有空位置,所以這是一種假溢出。,,,,,,,B,C,E,REAR4,,,,,,,D,FRONT0,,,,,FRONTREAR4,,,,,,,解決方法循環(huán)隊(duì)列,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)4,,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,為了能夠充分的使用數(shù)組中的存儲空間,把數(shù)組的前端和后端連接起來,形成一個環(huán)形的表,即把存儲隊(duì)列元素的表從邏輯上看成一個環(huán),成為循環(huán)隊(duì)列(CIRCULARQUEUE)。,FRONT,,,,,FRONT,REAR,FRONT,REAR,A,,,FRONT,REAR,B,C,D,,,FRONT,REAR,A,B,C,D,,,FRONT,REAR,A,B,C,,,REAR,A空隊(duì)列,BA入隊(duì)列,CB,C入隊(duì)列,DD入隊(duì)列(隊(duì)滿),E出隊(duì)1次,F出隊(duì)3次(隊(duì)空),隊(duì)頭指針進(jìn)1FRONTFRONT1MAXSIZE;隊(duì)尾指針進(jìn)1REARREAR1MAXSIZE;,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)4,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,以下是隊(duì)空的幾種情況,初始化時FRONTREAR0循環(huán)隊(duì)列為空的條件是FRONTREAR,,,FRONT,REAR,A空隊(duì)列,FRONT,,,REAR,F出隊(duì)3次(隊(duì)空),FRONT0REAR0,FRONT4REAR4,第5節(jié)順序隊(duì)列,隊(duì)列的順序存儲結(jié)構(gòu)4,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,循環(huán)隊(duì)列為滿的條件是FRONTREAR1MAXSIZE,,,FRONT,REAR,A,B,C,D,以下是隊(duì)滿的幾種情況,FRONT0REAR4,,,FRONT,REAR,A,B,C,D,FRONT3REAR2,,,FRONT,REAR,B,C,D,A,FRONT1REAR0,第5節(jié)順序隊(duì)列,順序隊(duì)列的基本運(yùn)算1,1)、初始化隊(duì)列INITQUEUECIRQUEUEINITQUEUE{CIRQUEUEQQFRONTQREAR0RETURNQ}2)、判定隊(duì)列Q是否為空QUEUEEMPTYQINTQUEUEEMPTYCIRQUEUEQ{RETURNQFRONTQREAR},數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,第5節(jié)順序隊(duì)列,順序隊(duì)列的基本運(yùn)算2,3、求隊(duì)列Q的長度QUEUELENGTHQINTQUEUELENGTHCIRQUEUEQ{RETURNQREARMAXSIZEQFRONTMAXSIZE},數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,FRONT,REAR,A,B,C,FRONT0REAR3,,,FRONT,REAR,A,B,C,D,FRONT3REAR2,第5節(jié)順序隊(duì)列,順序隊(duì)列的基本運(yùn)算3,4、獲取隊(duì)列Q隊(duì)首元素的值GETHEADQELEMENTTYPEGETHEADCIRQUEUEQ{IFQUEUEEMPTYQRETURN1RETURNQELEMQFRONT1MAXSIZE},數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,FRONT,REAR,,,FRONT,REAR,A,B,C,FRONT0REAR3,,,FRONT,REAR,A,B,D,FRONT4REAR2,第5節(jié)順序隊(duì)列,順序隊(duì)列的基本運(yùn)算4,5、ADDQUEUEQ,E將元素E入隊(duì)VOIDADDQUEUECIRQUEUEQ,ELEMENTTYPEE{IFQFRONTQREAR1MAXSIZEPRINTF“\NFULL“ELSE{QREARQREAR1MAXSIZEQELEMQREARE}},數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,6、DELETEQUEUEQ刪除隊(duì)首元素ELEMENTTYPEDELETEQUEUECIRQUEUEQ{ELEMENTTYPEEIFQFRONTQREARRETURN1ELSE{EQELEMQFRONT1MAXSIZEQFRONTQFRONT1MAXSIZERETURNE}},,,鏈?zhǔn)疥?duì)列,1、鏈?zhǔn)疥?duì)列的存儲結(jié)構(gòu)2、鏈?zhǔn)疥?duì)列的基本運(yùn)算,06,數(shù)據(jù)結(jié)構(gòu)與算法,第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的存儲結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,361隊(duì)列的鏈?zhǔn)酱鎯Y(jié)構(gòu),隊(duì)首指針FRONT,圖316鏈隊(duì)列,,,隊(duì)尾指針REAR,,,,Λ,,,,,A2,A1,AN,ΛΛ,頭結(jié)點(diǎn),,,隊(duì)首指針FRONT,隊(duì)尾指針REAR,B非空鏈隊(duì)列,A空鏈隊(duì)列,第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的存儲結(jié)構(gòu),數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,TYPEDEFSTRUCTQNODE{ELEMENTTYPEDATA//結(jié)點(diǎn)數(shù)據(jù)域STRUCTQNODENEXT//結(jié)點(diǎn)指針域}QUEUENODETYPEDEFSTRUCT{QUEUENODEFRONT,REAR//隊(duì)首和隊(duì)尾指針}LINKQUEUE,第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的基本操作,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,1.隊(duì)列初始化。隊(duì)列的初始化實(shí)現(xiàn)比較簡單,算法如下LINKQUEUEINITQUEUE{QUEUENODEPLINKQUEUEQPQUEUENODEMALLOCSIZEOFQUEUENODEPNEXTNULLQFRONTQREARPRETURNQ},2判斷隊(duì)列是否為空INTQUEUEEMPTYLINKQUEUEQ{RETURNQFRONTQREAR},第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的基本操作,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,3.獲取隊(duì)首元素ELEMENTTYPEGETHEADLINKQUEUEQ{IFQUEUEEMPTYQRETURNNILRETURNQFRONTNEXTDATA},第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的基本操作,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,4入隊(duì)操作//插入元素E為Q的新的隊(duì)尾元素VOIDADDQUEUELINKQUEUEQ,ELEMENTTYPEE{QUEUENODEPPQUEUENODEMALLOCSIZEOFQUEUENODEIFP{PRINTF“存儲分配失敗\N”RETURN}PDATAEPNEXTNULLQREARNEXTP//把擁有元素E新結(jié)點(diǎn)P賦值給原隊(duì)尾結(jié)點(diǎn)的后繼QREARP//把當(dāng)前的P設(shè)置為隊(duì)尾結(jié)點(diǎn),REAR指向P},第6節(jié)鏈?zhǔn)疥?duì)列,鏈?zhǔn)疥?duì)列的基本操作,數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,5.出隊(duì)操作//若隊(duì)列不空,刪除Q的隊(duì)頭元素,用E返回其值ELEMENTTYPEDELETEQUEUELINKQUEUEQ{IFQUEUEEMPTYQRETURN1ELSE{ELEMENTTYPEEQUEUENODEPPQFRONTNEXT//將欲刪除的隊(duì)頭結(jié)點(diǎn)暫存給PQFRONTNEXTPNEXT//將原隊(duì)頭結(jié)點(diǎn)后繼賦值給頭結(jié)點(diǎn)后繼EPDATA//將欲刪除的隊(duì)頭結(jié)點(diǎn)的值賦值給EIFPQREARQREARQFRONTFREEPRETURNE}},,,本章實(shí)訓(xùn),07,數(shù)據(jù)結(jié)構(gòu)與算法,,,約瑟夫環(huán)的實(shí)現(xiàn)(P58),,鏈?zhǔn)疥?duì)列分隊(duì)簡單實(shí)現(xiàn),順序共享?xiàng)5暮唵螌?shí)現(xiàn),,棧和隊(duì)列,,,,,實(shí)訓(xùn)1,實(shí)訓(xùn)3,實(shí)訓(xùn)2,,,第七節(jié)實(shí)訓(xùn),數(shù)據(jù)結(jié)構(gòu)與運(yùn)算,,,THANKS,,完,數(shù)據(jù)結(jié)構(gòu)與算法,
下載積分: 4 賞幣
上傳時間:2024-01-07
頁數(shù): 44
大?。?1.62(MB)
子文件數(shù):