Table of Contents[Hūnā][Hōʻike]
ʻO ka ʻepekema kamepiula e pili ana i ka hoʻomaopopo ʻana i ka paʻakikī o nā algorithms a me nā hoʻonohonoho ʻikepili.
Loaʻa iā ʻoe kahi papa inoa o nā mea e pono e hoʻokaʻawale ʻia, akā ʻaʻohe ou manawa a i ʻole nā kumu e hoʻohana ai i kahi algorithm ʻoi aku ka paʻakikī.
ʻO ka hoʻokomo ʻana ʻo ia kekahi o nā algorithm maʻalahi loa, akā hiki ke lohi no nā papa inoa nui.
ʻO ka hoʻokō maʻalahi a me ka hoʻomaopopo ʻana ua lilo kēia ʻano i mea punahele i waena o nā mea polokalamu. He kūpono ia no nā papa inoa liʻiliʻi a i ʻole inā makemake ʻoe i kahi hopena wikiwiki.
Ma kēia pou blog, e nānā mākou i ka paʻakikī o ka manawa o ka hoʻokomo ʻana. Hoʻohana ʻia kēia algorithm e hoʻokaʻawale i nā arrays, a loaʻa iā ia ka manawa holo o O(n2). ʻO kēia ke ʻano o ka piʻi ʻana o ka paʻakikī o ka manawa me ka nui o ka array.
Eia naʻe, hiki ke ʻoi aku ka wikiwiki o kēia algorithm ma mua o nā ʻano algorithm ʻē aʻe, e like me ka quicksort.
E nānā pono kākou i ka hana ʻana o ka hoʻokomo ʻana!
He aha ka Insertion Sort Algorithm?
Hoʻokahi mea i ka manawa, hoʻokomo ʻia ke ʻano e hoʻopuka i kahi ʻano hoʻonohonoho, i kapa pinepine ʻia he papa inoa.
No ka laʻana, hoʻohana ʻia ka hoʻokaʻawale ʻana i nā polokalamu kamepiula paʻakikī e like me nā compilers, kahi mea nui o ka hoʻonohonoho ʻana o nā hōʻailona i ka wehewehe ʻana o ka papahana.
Pehea ka hana ʻana o ka hoʻokomo ʻana?
Ke hoʻohana mākou i ka ʻano hoʻokomo e hoʻokaʻawale i kahi ʻano, hoʻomaka ka algorithm ma ka ʻimi ʻana i ka mea liʻiliʻi loa i ka papa inoa a hoʻokomo iā ia i kahi kūpono.
A laila loaʻa iā ia ka mea liʻiliʻi loa a hoʻokomo i ke kūlana kūpono, a pēlā aku.
Ke hana nei ka algorithm ma ka huli ʻana i ka papa inoa, e hoʻohālikelike ana i kēlā me kēia mea i ka mea i hele mai ma mua.
Inā hewa nā mea, hoʻololi ka algorithm iā lākou. A laila nānā ʻo ia e ʻike inā hoʻokaʻawale ʻia ka papa inoa, a inā ʻo ia, pau ka algorithm.
I ka hoʻomaʻamaʻa, hoʻokomo pinepine ʻia ka ʻano hoʻokomo me ka hoʻohana ʻana i kekahi mau laina o ke code, e lilo ia i koho kaulana no ka hoʻokaʻawale ʻana i nā arrays liʻiliʻi. Eia naʻe, pono e noʻonoʻo ʻia ka paʻakikī o ka manawa i ka wā e hoʻohana ai i kēia algorithm.
la'ana:
Eia kekahi laʻana o ka hana ʻana o ka hoʻokomo ʻana. E hoʻohana mākou i kēia array:
1, 2, 3, 4, 5, 6
Hoʻomaka ka algorithm ma ka ʻimi ʻana i ka mea liʻiliʻi loa i ka papa inoa, ʻo ia ka 1. A laila hoʻokomo ʻo ia i ke kūlana kūpono, ke kūlana mua. Loaʻa iā ia ka mea liʻiliʻi e hiki mai ana, ʻo ia ka 2. Hoʻokomo ʻo ia i ke kūlana kūpono, ʻo ia ka lua o ke kūlana.
A laila, loaʻa iā ia ka mea liʻiliʻi aʻe, ʻo ia ka 3. Hoʻokomo ʻo ia i ke kūlana kūpono, ʻo ia ke kolu o ke kūlana.
A laila, loaʻa iā ia ka mea liʻiliʻi loa, ʻo ia ka 4. Hoʻokomo ʻo ia i ke kūlana kūpono, ʻo ia ke kūlana ʻehā, a pēlā aku. Hoʻonohonoho ʻia ka papa inoa i kēia manawa!
Hiki iā mākou ke ʻike mai ka laʻana e lawe ka algorithm i ʻeono hoʻohālikelike a hoʻololi i ka papa inoa. No ka mea, lawe n2 hoʻohālikelike a hoʻololi i ka papa inoa o nā mea n. I kēia hihia, n=6.
Pehea e hoʻomaikaʻi ai i ka paʻakikī o ka hoʻokomo ʻana i ka manawa?
ʻOiai ʻo ka hoʻokomo ʻana he manawa holo o O(n2), hiki ke hoʻomaikaʻi ʻia me ka hoʻohana ʻana i kahi algorithm ʻoi aku ka maikaʻi, e like me ka quicksort.
Loaʻa iā Quicksort kahi manawa holo O (n log n), ʻoi aku ka wikiwiki ma mua o O (n2).
Eia nō naʻe, i kekahi mau hihia, ʻoi aku ka wikiwiki o ka hoʻokomo ʻana ma mua o ka wikiwiki.
No ka laʻana, inā pololei ka papa inoa, ʻoi aku ka liʻiliʻi o ka hoʻokomo ʻana i ka manawa ma mua o ka wikiwiki.
I ka hoʻomaʻamaʻa, hoʻokomo pinepine ʻia ka ʻano hoʻokomo me ka hoʻohana ʻana i kekahi mau laina o ke code, e lilo ia i koho kaulana no ka hoʻokaʻawale ʻana i nā arrays liʻiliʻi.
Eia naʻe, pono e noʻonoʻo ʻia ka paʻakikī o ka manawa i ka wā e hoʻohana ai i kēia algorithm.
Paʻakikī o ka manawa
ʻO ka hihia ʻino loa O(n2):
Hoʻonui ka paʻakikī o ka manawa me ka nui o ka array. Lawe ia n2 hoʻohālikelike a hoʻololi i ka papa inoa o nā mea n.
No ka laʻana, inā loaʻa iā mākou kahi laha o ka nui 1000, e lawe ka algorithm i 1,000,000 hoʻohālikelike a hoʻololi e hoʻokaʻawale i ka array.
ʻO ka hihia paʻakikī O(n):
ʻO ka paʻakikī o ka manawa like me ka nui o ka papa hoʻokomo. I
t lawe n hoʻohālikelike a hoʻololi i ka papa inoa o n mau mea. No ka laʻana, e noʻonoʻo i kahi ʻano o ka nui 5. E lawe ka algorithm i ʻelima mau hoʻohālikelike a hoʻololi e hoʻokaʻawale i ka array.
Ka Paʻakikī O (n2):
ʻO ka paʻakikī o ka manawa ma waena o nā pilikia pilikia a maikaʻi loa i kēia hihia.
Lawe ia n2 hoʻohālikelike a hoʻololi i ka papa inoa o nā mea n.
No laila, ʻo ka hoʻokomo ʻana he algorithm hoʻonohonoho paʻa.
No ke aha e paʻa ai ka hoʻokomo ʻana?
Paʻa ka ʻano hoʻokomo no ka mea mālama ia i ka hoʻonohonoho ʻana o nā mea like i loko o ka papa hoʻokomo.
He mea nui kēia no nā noi he nui, e like me ka hoʻihoʻi ʻana i ka ʻikepili a i ʻole ka loiloi kālā. No ka laʻana, inā loaʻa iā mākou ʻelua papa inoa o nā helu a makemake mākou e hoʻohālikelike iā lākou, pono mākou e hōʻoia i ka mālama ʻana i ka hoʻonohonoho o nā mea.
Inā ʻaʻole hoʻokaʻawale ʻia nā papa inoa, ʻaʻole mākou e hoʻohālikelike pololei iā lākou.
Waiho i ka Reply