1 00:00:00,000 --> 00:00:02,000 [Powered by Google Translate] [Ciú] 2 00:00:02,000 --> 00:00:05,000 [Chris Gerber, Ollscoil Harvard] 3 00:00:05,000 --> 00:00:07,000 Is é seo an CS50, CS50.TV] 4 00:00:07,000 --> 00:00:11,000 Is é ceann úsáideach sonraí struchtúr a stóráil bailiúchán ordú na n-eilimintí scuaine. 5 00:00:11,000 --> 00:00:14,000 Tá sé in úsáid nuair is gá na heilimintí a bhaint 6 00:00:14,000 --> 00:00:16,000 san ord céanna mar a cuireadh iad. 7 00:00:16,000 --> 00:00:20,000 Tá an coincheap ar a dtugtar FIFO, a bhfuil an acrainm do chéad, an chéad amach. 8 00:00:20,000 --> 00:00:23,000 Chun cabhrú visualize seo, d'fhéadfadh sé a bheith úsáideach pictiúr 9 00:00:23,000 --> 00:00:25,000 líne Seiceáil ag siopa. 10 00:00:25,000 --> 00:00:28,000 Mar a thagann daoine, fanacht siad ar chúl an líne. 11 00:00:28,000 --> 00:00:31,000 An Cashier Bíonn ansin casadh ag freastal ar na custaiméirí ag an tosaigh, 12 00:00:31,000 --> 00:00:34,000 a scoir an líne amháin ag an am. 13 00:00:34,000 --> 00:00:37,000 I eolaíocht ríomhaireachta, a tharchur muid go dtí an os comhair an scuaine mar an ceann 14 00:00:37,000 --> 00:00:39,000 agus ar chúl an eireaball. 15 00:00:39,000 --> 00:00:41,000 Sampla de nuair a d'fhéadfadh muid seo a úsáid in iarratas 16 00:00:41,000 --> 00:00:44,000 Is waitlist do rollú rang. 17 00:00:44,000 --> 00:00:46,000 Mar a bheith suíocháin atá ar fáil sa rang, 18 00:00:46,000 --> 00:00:50,000 bhfuil an duine ag ceann an liosta feithimh an deis a chlárú sa rang. 19 00:00:50,000 --> 00:00:53,000 >> Is féidir le scuaine a thógáil ag baint úsáide as aon bhailiúchán 20 00:00:53,000 --> 00:00:57,000 go bhfuil na sonraí siopaí in ord, ar nós mar eagar nó liosta nasctha. 21 00:00:57,000 --> 00:01:00,000 Chomh maith leis an mbailiúchán a stóráil na míreanna sa scuaine, 22 00:01:00,000 --> 00:01:02,000 ní mór dúinn chomh maith le modh chun míreanna a chur ag deireadh na scuaine, 23 00:01:02,000 --> 00:01:04,000 ar a dtugtar enqueuing, 24 00:01:04,000 --> 00:01:07,000 agus ceann eile a bhaint mír as an barr an chuí, 25 00:01:07,000 --> 00:01:09,000 ar a dtugtar dequeuing. 26 00:01:09,000 --> 00:01:14,000 Is minic gur úsáideach a chur san áireamh ar mhodh eile chun filleadh ar an fad atá ann faoi láthair ar an scuaine 27 00:01:14,000 --> 00:01:17,000 chomh maith le modh a sheiceáil má tá an scuaine folamh. 28 00:01:17,000 --> 00:01:20,000 A ligean ar breathnú ar conas a d'fhéadfadh muid a chur i bhfeidhm scuaine na slánuimhreacha i C, 29 00:01:20,000 --> 00:01:23,000 úsáid a bhaint as le sraith maidir le bailiú na n-eilimintí. 30 00:01:23,000 --> 00:01:27,000 An chéad, a chruthú dúinn struchtúr a dtugtar scuaine de bheith i seilbh ár n-athróg. 31 00:01:27,000 --> 00:01:30,000 Bainfimid úsáid as seasta-mhéid sraith innéacs 0 na slánuimhreacha 32 00:01:30,000 --> 00:01:33,000 a stóráil na heilimintí sin. 33 00:01:33,000 --> 00:01:35,000 Cuirfimid san áireamh freisin ceann athróg ar a dtugtar 34 00:01:35,000 --> 00:01:39,000 go siopaí an t-innéacs na dúile atá faoi láthair ag ceann na scuaine. 35 00:01:39,000 --> 00:01:42,000 A athróg an tríú, ar a dtugtar fad a bheidh, a úsáid 36 00:01:42,000 --> 00:01:45,000 súil a choinneáil ar líon na n-eilimintí sa eagar. 37 00:01:45,000 --> 00:01:48,000 Mar mhalairt, d'fhéadfaí tú a mheas ag baint úsáide as eireaball athróg ar a dtugtar 38 00:01:48,000 --> 00:01:51,000 a chur in iúl an ghné réimse deireanach sa eagar. 39 00:01:51,000 --> 00:01:53,000 Sula muid ag scríobh cód ar bith níos mó, 40 00:01:53,000 --> 00:01:55,000 a ligean ar triail a bhaint as ár dearadh. 41 00:01:55,000 --> 00:01:58,000 Let tús le sraith folamh ar fad 0, 42 00:01:58,000 --> 00:02:02,000 le leagtar an ceann 0. 43 00:02:02,000 --> 00:02:11,000 Anois enqueue ligean ar 4 luachanna - 6, 2, 3, agus 1. 44 00:02:11,000 --> 00:02:14,000 Beidh an fad anois 4, 45 00:02:14,000 --> 00:02:17,000 agus beidh an ceann fanacht ag 0. 46 00:02:17,000 --> 00:02:20,000 >> Cad a tharlaíonn má dequeue againn luach? 47 00:02:20,000 --> 00:02:24,000 Déanfaimid an fad a laghdú go 3, 48 00:02:24,000 --> 00:02:28,000 an ceann atá leagtha go 1, 49 00:02:28,000 --> 00:02:33,000 agus seol ar ais an luach 6. 50 00:02:33,000 --> 00:02:36,000 D'fhéadfadh an cód breathnú mar seo. 51 00:02:36,000 --> 00:02:38,000 Anseo ní mór dúinn an fheidhm dequeue, 52 00:02:38,000 --> 00:02:41,000 a thógann pointeoir leis an scuaine - q - agus pointeoir leis an eilimint, 53 00:02:41,000 --> 00:02:44,000 atá ina slánuimhir chineál. 54 00:02:44,000 --> 00:02:47,000 An Chéad muid ag seiceáil an fad an scuaine a dhéanamh cinnte tá sé níos mó ná 0, 55 00:02:47,000 --> 00:02:50,000 chun a chinntiú go bhfuil gné a dequeued. 56 00:02:50,000 --> 00:02:54,000 Ansin muid ag breathnú ar an raon gnéithe, ag ceann seasamh, 57 00:02:54,000 --> 00:02:58,000 agus leag an luach eilimint a bheith ar an luach ag an suíomh. 58 00:02:58,000 --> 00:03:01,000 Ansin linn a athrú an ceann a bheith ar an innéacs seo chugainn 59 00:03:01,000 --> 00:03:04,000 % An cumas. 60 00:03:04,000 --> 00:03:07,000 Táimid ag laghdú ansin an fad an scuaine ag 1. 61 00:03:07,000 --> 00:03:12,000 Mar fhocal scoir, ar ais dúinn fíor a chur in iúl go raibh an dequeue rathúil. 62 00:03:12,000 --> 00:03:19,000 Má dequeue againn arís, beidh an fad 2, 63 00:03:19,000 --> 00:03:24,000 Beidh an ceann freisin bheith 2, 64 00:03:24,000 --> 00:03:32,000 agus beidh an luach ar ais 2. 65 00:03:32,000 --> 00:03:35,000 >> Cad a tharlaíonn má enqueue eile againn luach den sórt sin mar 7? 66 00:03:35,000 --> 00:03:37,000 Mar a bhí againn ag deireadh na scuaine, 67 00:03:37,000 --> 00:03:47,000 ní mór dúinn a wrap thart agus a stóráil ar an luach i 0 eilimint den eagar. 68 00:03:47,000 --> 00:03:50,000 Mathematically, is féidir é seo a léiriú tríd an fad 69 00:03:50,000 --> 00:03:52,000 chun an t-innéacs an ceann 70 00:03:52,000 --> 00:03:55,000 a chomhlíonadh agus a modulus baint úsáide as an acmhainn scuaine. 71 00:03:55,000 --> 00:04:00,000 Seo go 2 +2, a bhfuil 4% 4, 72 00:04:00,000 --> 00:04:02,000 bhfuil 0. 73 00:04:02,000 --> 00:04:05,000 Aistriúchán an smaoineamh seo chun cód ní mór dúinn an fheidhm seo. 74 00:04:05,000 --> 00:04:08,000 Anseo feicimid an fheidhm enqueue, 75 00:04:08,000 --> 00:04:10,000 a thógann pointeoir leis an scuaine - q - 76 00:04:10,000 --> 00:04:14,000 agus tógann sé an eilimint atá le enqueued, atá ina slánuimhir. 77 00:04:14,000 --> 00:04:18,000 Táimid ag seiceáil eile a dhéanamh cinnte go bhfuil an cumas an scuaine 78 00:04:18,000 --> 00:04:21,000 tá sé fós níos mó ná an fad atá ann faoi láthair na scuaine. 79 00:04:21,000 --> 00:04:24,000 Next, a stóráil againn ar an eilimint sa eagar gnéithe 80 00:04:24,000 --> 00:04:30,000 ag an innéacs atá arna chinneadh ag an ceann +% fad cumas an scuaine. 81 00:04:30,000 --> 00:04:33,000 Táimid ag méadú ansin an fad scuaine ag 1, 82 00:04:33,000 --> 00:04:39,000 agus seol ar ais ansin fíor a chur in iúl go raibh an fheidhm enqueue rathúil. 83 00:04:39,000 --> 00:04:42,000 >> Chomh maith leis an dá fheidhm atá againn atá luaite, 84 00:04:42,000 --> 00:04:44,000 tá dhá feidhmeanna breise. 85 00:04:44,000 --> 00:04:46,000 Is é an chéad fheidhm isempty, 86 00:04:46,000 --> 00:04:48,000 a thógann pointeoir leis an scuaine 87 00:04:48,000 --> 00:04:51,000 agus fíoraíonn go bhfuil an fad 0. 88 00:04:51,000 --> 00:04:53,000 Is é an dara feidhm fad, 89 00:04:53,000 --> 00:04:55,000 a thógann freisin pointeoir leis an scuaine 90 00:04:55,000 --> 00:04:58,000 agus tuairisceáin an fad atá ann faoi láthair ó na struct. 91 00:04:58,000 --> 00:05:03,000 Tá an forbhreathnú gearr léirithe amháin i bhfeidhm d'fhéadfadh a scuaine. 92 00:05:03,000 --> 00:05:06,000 Ceann de na teorainneacha a ghabhann leis an cur i bhfeidhm 93 00:05:06,000 --> 00:05:08,000 é go bhfuil an scuaine méid uasta socraithe. 94 00:05:08,000 --> 00:05:11,000 Má iarracht muid a chur gnéithe níos mó ná is féidir leis an scuaine a shealbhú, 95 00:05:11,000 --> 00:05:14,000 is féidir linn a neamhaird a dhéanamh leis an iarraidh agus an eilimint titim, 96 00:05:14,000 --> 00:05:17,000 nó is féidir linn a fearr a thabhairt ar ais roinnt de chineál earráide. 97 00:05:17,000 --> 00:05:20,000 Ag baint úsáide as liosta nasctha seachas eagar 98 00:05:20,000 --> 00:05:22,000 Bheadh ​​sé níos éasca le méid dinimiciúil an scuaine. 99 00:05:22,000 --> 00:05:26,000 Mar sin féin, ós rud é nach bhfuil againn rochtain dhíreach ar na gnéithe de liosta nasctha, 100 00:05:26,000 --> 00:05:28,000 más rud é nach bhfuil muid ag súil a choinneáil ar an eireaball, 101 00:05:28,000 --> 00:05:32,000 ba mhaith linn a scanadh ar an liosta iomlán nasctha a fháil chun an deireadh gach uair. 102 00:05:32,000 --> 00:05:35,000 D'fhéadfadh muid a mheas freisin ag baint úsáide as le sraith de chineál eile sonraí, 103 00:05:35,000 --> 00:05:39,000 mar shampla structs, a chruthú scuainí na n-eilimintí níos casta. 104 00:05:39,000 --> 00:05:42,000 Ag smaoineamh ar ais go dtí ár sampla de waitlist ranga, 105 00:05:42,000 --> 00:05:45,000 D'fhéadfadh na struchtúir seo ar son an mhic léinn aonair. 106 00:05:45,000 --> 00:05:48,000 >> Is é mo ainm Chris Gerber, agus tá sé seo CS50. 107 00:05:48,000 --> 00:05:51,000 [CS50.TV] 108 00:05:51,000 --> 00:05:55,000 Agus tuairisceáin - >> amháin níos mó ama. 109 00:05:55,000 --> 00:06:00,000 Agus seol ar ais fíor chun a léiriú go - an scuaine a bhí rathúil. 110 00:06:00,000 --> 00:06:03,000 -% An cumas na scuaine - 111 00:06:03,000 --> 00:06:06,000 Tá sé seo ag dul a bheith spraoi i edit. [Gáire]