рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░ред
рд╕рдордп-рд╕рдордп рдкрд░ рдореИрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд░реЛрдЧреНрд░рд╛рдорд░ рдХреА рддрд░рд╣, рдХреБрдЫ рдирдИ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдФрд░ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╕реАрдЦрддрд╛ рд╣реВрдВред
рдЗрд╕ рдмрд╛рд░ рдореИрдВ рдХреИрд╢ рдЧреБрдордирд╛рдореА рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкрд░ рд▓реЗрдЦреЛрдВ рдХреЗ рдкрд╛рд░ рдЖрдпрд╛ред рдпреЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рд╣реИрдВ рдЬреЛ рд╢реБрд░реВ рдореЗрдВ рдЖрдзреБрдирд┐рдХ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЗ рдХреИрд╢рд┐рдВрдЧ рд╕рд┐рд╕реНрдЯрдо рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдЕрдиреБрдХреВрд▓рд┐рдд рд╣реИрдВред
рдЗрд╕ рд╕рдореВрд╣ рдХреЗ рдкреНрд░рддрд┐рдирд┐рдзрд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд▓рд┐рдВрдХреНрдб рд╕реВрдЪреА рд╣реИред
рдпрд╣ рдХреНрдпрд╛ рд╣реИ?
рдпрд╣ рд╕рдордЭрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд┐ рдпрд╣ рдХреНрдпрд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рдЦрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдореИрдВ рд╕рдмрд╕реЗ рд▓реЛрдХрдкреНрд░рд┐рдп рд╕реВрдЪреА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдХрд╛ рд╕реБрдЭрд╛рд╡ рджреЗрддрд╛ рд╣реВрдВ: ArrayList (рдХреБрдЫ рд╕рд░рд▓реАрдХрд░рдг рдХреЗ рд╕рд╛рде рд╣рдо рд╕реВрдЪреА рдХреЗ рдмрдЬрд╛рдп рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реЗрдВрдЧреЗ) рдФрд░ LinkedListред
рдЙрдирдХреЗ рдореБрдЦреНрдп рд▓рд╛рднреЛрдВ рдФрд░ рдиреБрдХрд╕рд╛рдиреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
ArrayList :
рдЧреМрд░рд╡- рдХреЙрдореНрдкреИрдХреНрдЯреАрдиреЗрд╕ - рд╕реВрдЪрд┐рдпреЛрдВ рдХрд╛ рдкреНрд░рддрд┐рдирд┐рдзрд┐рддреНрд╡ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рдгреА рд╕рдмрд╕реЗ (рдХрдо рд╕реЗ рдХрдо рдПрдХ) рдХреЙрдореНрдкреИрдХреНрдЯ рдбреЗрдЯрд╛ рд╕рдВрд░рдЪрдирд╛ рд╣реИ;
- рдЕрдирдлрд╝рд┐рд▓реНрдб рд╕рд░рдгреА рдХреЗ рдЕрдВрдд рдореЗрдВ рд╕рдореНрдорд┐рд▓рди рдХреА рдЧрддрд┐ - рдСрдкрд░реЗрд╢рди рдмрд╣реБрдд рддреЗрдЬрд╝ рд╣реИ, рддрдереНрдп!
- рд╕реВрдЪрдХрд╛рдВрдХ рджреНрд╡рд╛рд░рд╛ рдПрдХ рддрддреНрд╡ рд▓реЗрдиреЗ рдХреА рдЧрддрд┐ рднреА рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╣реИ, рдХреИрд╢ рдорд┐рд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рдПрди / рдмреА рдореЗрдВ рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЬрд╣рд╛рдВ рдмреА рдХреИрд╢ рд▓рд╛рдЗрди рдХрд╛ рдЖрдХрд╛рд░ рд╣реИ, рдФрд░ рдПрди рд╕рд░рдгреА рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИ, рдЬрд┐рд╕реЗ рдЗрд╕ рддрд░рд╣ рдХреА рд╕рдВрд░рдЪрдирд╛ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рдВрджрд░реНрдн рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдХрдорд┐рдпреЛрдВ- рдХрд┐рд╕реА рд╕рд░рдгреА рдХреЗ рд▓рд┐рдП рдмреАрдЪ рдореЗрдВ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдирд╛ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╕рдВрдЪрд╛рд▓рди рдирд╣реАрдВ рд╣реИ, рдЖрдкрдХреЛ рджрд╛рдИрдВ рдУрд░ рд╢рд┐рдлреНрдЯ рдХрд░рдирд╛ рд╣реЛрдЧрд╛, рдЬреЛ рдХрд┐ рдПрд░реЗрдХреЛрдкреА рдХреЗ рд╕рд╛рде рдЕрднреА рднреА рдореБрдХреНрдд рдирд╣реАрдВ рд╣реИ;
- рдореЗрдореЛрд░реА рдХреНрд╖реЗрддреНрд░ рдХреА рд▓рдВрдмрд╛рдИ - рдмрдбрд╝реЗ рд╕рд░рдгрд┐рдпреЛрдВ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдореГрддрд┐ рдХреЗ рдПрдХ рдмрдбрд╝реЗ рд╕рдиреНрдирд┐рд╣рд┐рдд рдЯреБрдХрдбрд╝реЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред рдФрд░ рдЬрдмрдХрд┐ рдХрдИ рдХрдЪрд░рд╛ рд╕рдВрдЧреНрд░рд╣рдХрд░реНрддрд╛ рд╕реНрдореГрддрд┐ рд╡рд┐рдЦрдВрдбрди рд╕реЗ рдкреНрд░рднрд╛рд╡реА рдврдВрдЧ рд╕реЗ рдирд┐рдкрдЯрддреЗ рд╣реИрдВ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрдбрд╝реА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдЖрдЙрдЯрдСрдлрдореЗрдореЛрд░реА рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред
рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ :
рдЧреМрд░рд╡- рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рд╕рд░рд▓ рдФрд░ рддреЗрдЬреА рд╕реЗ рдордзреНрдп рдбрд╛рд▓рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп;
- рдЕрддреНрдпрдзрд┐рдХ рдЦрдВрдбрд┐рдд рд╕реНрдореГрддрд┐ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рддреЗ рд╕рдордп рдХреЛрдИ рд╕рдорд╕реНрдпрд╛ рдирд╣реАрдВ рд╣реЛрддреА рд╣реИред
рдХрдорд┐рдпреЛрдВ- рд╕рдорд╛рди рдЖрдХрд╛рд░ рдХреЗ рдбреЗрдЯрд╛ (4 рдЧреБрдирд╛ рддрдХ) рдХреЗ рднрдВрдбрд╛рд░рдг рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рдореЗрдореЛрд░реА рдХреА рдмрдбрд╝реА рдорд╛рддреНрд░рд╛;
- рдЬрдм рдПрдХ рд╕реВрдЪреА рдкрд░ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐ рд╣реЛрддреА рд╣реИ, рддреЛ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдХреИрд╢ рдорд┐рд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реВрдЪреА рдиреЛрдбреНрд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реЛ рд╕рдХрддреА рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫреЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдЬрдм рд╕рднреА рдиреЛрдбреНрд╕ рдПрдХ рдХреЗ рдмрд╛рдж рдПрдХ рдореЗрдореЛрд░реА рдореЗрдВ рд╣реЛрддреЗ рд╣реИрдВ, рддреЛ рдиреЛрдбреНрд╕ рдХреЗ рдмрдбрд╝реЗ рдЖрдХрд╛рд░ рдХреЗ рдХрд╛рд░рдг, рдХреИрд╢ рдорд┐рд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ ArrayList рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрдИ рдЧреБрдирд╛ рдмрдбрд╝реА рд╣реЛрдЧреАред
рдЗрд╕рд▓рд┐рдП рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд▓рд┐рдВрдХрд▓рд┐рд╕реНрдЯ рджреЛ рд╕реВрдЪрд┐рдпреЛрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХреЛ рд╕рдВрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд░рд╣рд╛ рд╣реИ, рди рдХрд┐ рдЙрдирдХреА рдХрдордЬреЛрд░рд┐рдпреЛрдВ рдХреЛ рд╡рд┐рд░рд╛рд╕рдд рдореЗрдВ рд▓реЗрдиреЗ рдХрд╛ред
рдЗрд╕ рд╕реВрдЪреА рдХреЗ рдЙрдкрдХрд░рдг рдкрд░ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддрд╛рд░ рд╕реЗ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВред
рд╕реАрдзреЗ рд╢рдмреНрджреЛрдВ рдореЗрдВ рдХрд╣рд╛ рдЬрд╛рдП рддреЛ UnrolledLinkedList рд▓рдВрдмрд╛рдИ n рдХреЗ рд╕рд░рдгрд┐рдпреЛрдВ рд╕реЗ рдЬреБрдбрд╝реА (рдбрдмрд▓ рдХрдиреЗрдХреНрдЯреЗрдб) тАЛтАЛрд╕реВрдЪреА рд╣реИред рдпрд╣реА рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдореЗрдВ рдПрдХ рдорд╛рди рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдПрдХ рдорд╛рди рд╣реИред рдЗрд╕реА рд╕рдордп, рд╕рд░рдгреА рдХрд╛рдлреА рдЫреЛрдЯрд╛ рд╣реИ рддрд╛рдХрд┐ рдбрд╛рд▓рдиреЗ рдФрд░ рд╣рдЯрд╛рдиреЗ рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдмрд╣реБрдд рддреЗрдЬ рд╣реЛ рдФрд░ рдореЗрдореЛрд░реА рд╡рд┐рдЦрдВрдбрди рдореЗрдВ рдиреЛрдбреНрд╕ рдмрдирд╛рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдкрд░ рдХрдо рдкреНрд░рднрд╛рд╡ рдкрдбрд╝рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдХреИрд╢ рдорд┐рд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдХреИрд╢ рд▓рд╛рдЗрди рдореЗрдВ рдлрд┐рдЯ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдЗрд╕рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддрд╛ рд╣реИред рдЖрд▓реЗрдЦреАрдп рд░реВрдк рд╕реЗ, рдЗрд╕ рд╕реВрдЪреА рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:

рдЗрд╕ рд╕реВрдЪреА рдХреЗ рд╕рдВрдЪрд╛рд▓рди рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░реЗрдВ:
рдПрдХ рдиреЛрдб рдореЗрдВ рдбрд╛рд▓реЗрдВ:рдпрджрд┐ рдирд┐: рд╢реБрд▓реНрдХ рдХреЛрд╢рд┐рдХрд╛рдПрдВ рд╣реИрдВ, рддреЛ рд╕рд░рдгреА рдХреЗ рдЕрдВрдд рдореЗрдВ рдирдпрд╛ рддрддреНрд╡ рдЬреЛрдбрд╝рд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рд╕рд░рдгреА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рднрд░реА рд╣реБрдИ рд╣реИ, рддреЛ рд╣рдо рд╡рд░реНрддрдорд╛рди рдХреЗ рдкреАрдЫреЗ рдПрдХ рдирдпрд╛ рдиреЛрдб рдмрдирд╛рддреЗ рд╣реИрдВ рдФрд░ рд╕рд░рдгреА рдХреЗ рджрд╛рд╣рд┐рдиреЗ рдЖрдзреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдЙрд╕рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдирдП рдореВрд▓реНрдпреЛрдВ рдХреЛ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЬрдЧрд╣ рдмрдирддреА рд╣реИред рдЗрд╕ рдорд╛рдорд▓реЗ рдореЗрдВ, рдирдпрд╛ рддрддреНрд╡ рдирдП рдиреЛрдб рдХреЗ рдЕрдВрдд рдореЗрдВ рдбрд╛рд▓рд╛ рдЬрд╛рдПрдЧрд╛ред рдЙрд╕реА рдХреЛ рд╕рд░рдгреА рдХреЗ рдмреАрдЪ рдореЗрдВ рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
рдЖрд▓реЗрдЦреАрдп рд░реВрдк рд╕реЗ, рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рджрд░реНрд╢рд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ:
рдиреЛрдб рд╕реЗ рдирд┐рдХрд╛рд▓рдирд╛:рдСрдкрд░реЗрд╢рди рдХрд╛рдлреА рд╕рд░рд▓ рд╣реИ, рд╣рдо рдмрд╕ рд╡рд╛рдВрдЫрд┐рдд рддрддреНрд╡ рдХреЛ рд╕рд░рдгреА рд╕реЗ рд╣рдЯрд╛рддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рд╢реЗрд╖ рддрддреНрд╡реЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рд▓реЗрдХрд┐рди рдПрдХ рдмрд╛рдд рд╣реИ, рд▓реЗрдХрд┐рди рдЕрдЧрд░ рд╕рд░рдгреА рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ n / 2 рддрдХ рдХрдо рд╣реЛ рдЬрд╛рддреА рд╣реИ, рддреЛ n / 2 рддрддреНрд╡реЛрдВ рдХреЛ рдкрдбрд╝реЛрд╕реА рдХреЛрд╢рд┐рдХрд╛рдУрдВ рд╕реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрджрд┐ рдЗрд╕рдХреЗ рдмрд╛рдж рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рд╕реЗ рдПрдХ рдЦрд╛рд▓реА рд╣реИ, рддреЛ рдЗрд╕реЗ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдзреАрд░реЗ-рдзреАрд░реЗ рдмрдбрд╝реА рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рд╕рд╛рдл рдХрд░рддреЗ рд╣реБрдП рдореЗрдореЛрд░реА рдЦрдкрдд рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдСрдкрд░реЗрд╢рди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред
рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рджреНрд╡рд╛рд░рд╛ рдЦреЛрдЬ рдиреЛрдбреНрд╕:рдЬреИрд╕рд╛ рдХрд┐ рдПрдХ рд▓рд┐рдВрдХ рдХреА рдЧрдИ рд╕реВрдЪреА рдореЗрдВ, рдЦреЛрдЬ рд╕рд┐рд░ рдпрд╛ рдкреВрдВрдЫ рд╕реЗ рд╢реБрд░реВ рд╣реЛрддреА рд╣реИ, рдЬрд╣рд╛рдВ рд╕реЗ рдпрд╣ рдХрд░реАрдм рд╣реИ, рдЕрдВрддрд░ рдпрд╣ рд╣реИ рдХрд┐ рд╕рд░рдгрд┐рдпреЛрдВ рдкрд░ рдкреБрдирд░рд╛рд╡реГрддрд┐ рдХрд░рдиреЗ рдХреА рдХреЛрдИ рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рдЖрдкрдХреЛ рдиреЛрдб рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╡рд╛рд▓реЗ рдХреНрд╖реЗрддреНрд░реЛрдВ рдХреЗ рдореВрд▓реНрдпреЛрдВ рдХреЛ рдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдХрд╛рд░, рдЖрд╡рд╢реНрдпрдХ рдиреЛрдб рдХреА рдЦреЛрдЬ рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рддреЗрдЬ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдпрд╣рд╛рдВ рд╕реНрдкрд░реНрд╢реЛрдиреНрдореБрдЦреА рд╡реНрдпрд╡рд╣рд╛рд░ рдЕрднреА рднреА рдУ (рдПрди) рд╣реИред
рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдпрд╣ рдореБрдЭреЗ рдкреНрд░рддреАрдд рд╣реБрдЖ рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдореЗрдВ рдЦрд╛рд▓реА рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдЖрдзрд╛ рд╣рд┐рд╕реНрд╕рд╛ рдмрд╣реБрдд рдмреЗрдХрд╛рд░ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЬреИрд╕рд╛ рдХрд┐ рдЫреЛрдЯреЗ рдкреНрд░рдпреЛрдЧреЛрдВ рджреНрд╡рд╛рд░рд╛ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд╕рддрди, рд╕реЗрд▓ рднрд░рдиреЗ рдХрд╛ рд╕реНрддрд░ 70% рдХреЗ рд╕реНрддрд░ рдкрд░ рд╣реИ, рдФрд░ 50% рднрд░рдиреЗ рдХреЗ рд╕рд╛рде рднреА, рдореЗрдореЛрд░реА рдХреА рдЦрдкрдд рдПрдХ рдЬреБрдбрд╝реА рд╣реБрдИ рд╕реВрдЪреА рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХрд╛рдлреА рдХрдо рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕реВрдЪреА рдЖрдкрдХреЛ рд╡рд┐рднрд┐рдиреНрди рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдЦреБрдж рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддреА рд╣реИред рдореИрдВрдиреЗ рд╕рд░рдгреА рдХреЗ рднрд░рдг рдХрд╛рд░рдХ рдХреЗ рд╕рд╛рде рдЦреЗрд▓рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдХреЛрдИ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд▓рд╛рдн рдирд╣реАрдВ рдорд┐рд▓рд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕рдм рдХреБрдЫ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬреИрд╕рд╛ рдХрд┐ рдпрд╣ рд╣реИред
рдХреИрд╢ рдорд┐рд╕ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмреЛрд▓рддреЗ рд╣реБрдП, рдЬрдм рдЗрд╕ рддрд░рд╣ рдХреА рд╕реВрдЪреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ, рддреЛ рдЗрд╕рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ (рдПрди / рдПрди + 1) (рдПрди / рдмреА), рдЬрд╣рд╛рдВ рдПрди рд╕реВрдЪреА рдХреА рд▓рдВрдмрд╛рдИ рд╣реИ, рдПрди рдиреЛрдб рд╕рд░рдгреА рдХреА рд▓рдВрдмрд╛рдИ рд╣реИ, рдмреА рдХреИрд╢ рд▓рд╛рдЗрди рдХреА рд▓рдВрдмрд╛рдИ рд╣реИред рдпрд╣ рдЕрдиреБрдорд╛рди ArrayList рдХреЗ рд▓рд┐рдП рдЕрдиреБрдорд╛рди рдХреЗ рдХрд╛рдлреА рдХрд░реАрдм рд╣реИред
рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рдореБрдЭреЗ рдпрд╣ рднреА рд╡рд┐рдЪрд╛рд░ рдерд╛ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рд╕реВрдЪреА рдХреЗрд╡рд▓ рдПрдХ рдиреЛрдб рдХреЛ рд▓реЙрдХ рдХрд░рдиреЗ рдХреА рдХреНрд╖рдорддрд╛ рдХреЗ рд╕рд╛рде рд╕рдорд╡рд░реНрддреА рд╕рдВрдЧреНрд░рд╣ рдХрд╛ рдПрдХ рдХрд╛рдлреА рдкреНрд░рднрд╛рд╡реА рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реЛ рд╕рдХрддреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рдПрдХ рдирдП рдЕрдзреНрдпрдпрди рдФрд░ рдПрдХ рдирдП рд▓реЗрдЦ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рд╖рдп рд╣реИред
рд╕реВрддреНрд░
рдЬрд┐рдареБрдм рдкрд░ рддреИрдирд╛рдд рд╣реИрдВред
рд╡реЗ рдПрдХ рдХреНрд░реВрдб рдХреЛрдб рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдХреГрдкрдпрд╛ рдЧреБрдгрд╡рддреНрддрд╛ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдореБрд╢реНрдХрд┐рд▓ рди рдХрд░реЗрдВред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдореИрдВ рдХрд┐рд╕реА рднреА рдЖрд▓реЛрдЪрдирд╛ рдХрд╛ рдЖрднрд╛рд░реА рд░рд╣реВрдВрдЧрд╛ред
рд╡рд┐рднрд┐рдиреНрди рд╕реВрдЪрд┐рдпреЛрдВ рдХреЛ рдорд╛рдкрдиреЗ рдФрд░ рдЙрдирдХреА рддреБрд▓рдирд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд░реЛрддреЛрдВ рдореЗрдВ рдХреБрдЫ рдкреНрд░рдпрд╛рд╕ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдЙрдиреНрд╣реЗрдВ рд▓реЗрдЦ рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд░рдиреЗ рдореЗрдВ рд╢рд░реНрдорд┐рдВрджрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореБрдЭреЗ рдмрд╣реБрдд рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╕рднреА рдорд╛рдк рд╕рд╣реА рддрд░реАрдХреЗ рд╕реЗ рдХрд┐рдП рдЧрдП рдереЗ рдФрд░ рдореИрдВрдиреЗ рдкреИрд░ рдореЗрдВ рдЦреБрдж рдХреЛ рдЧреЛрд▓реА рдирд╣реАрдВ рдорд╛рд░реА рдереАред рд╕реВрдЪрд┐рдпреЛрдВ рдкрд░ рдмрд┐рдВрджреБрдУрдВ рдХреЗ рдЕрдВрддрд┐рдо рд╕реНрдерд╛рди рдХреЗ рд▓рд┐рдП рдмреЗрдВрдЪрдорд╛рд░реНрдХрд┐рдВрдЧ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮреЛрдВ рдХреА рдорджрдж рд╕реЗ рдореБрдЭреЗ рдмрд╣реБрдд рдЦреБрд╢реА рд╣реЛрдЧреА!
рдЖрдкрдХрд╛ рдзреНрдпрд╛рди рджреЗрдиреЗ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рджред
рд╕реВрддреНрд░реЛрдВ рдХрд╛ рдХрд╣рдирд╛ рд╣реИ:
blogs.msdn.com/b/devdev/archive/2005/08/22/454887.aspxen.wikipedia.org/wiki/Unrolled_linked_listUPD: рдЕрднреА рднреА рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдЖрдХрд╛рд░ рдХреА рдорд╛рдк рдХреЗ рд▓рд┐рдП рдорд┐рд▓рд╛ рд╣реИред Microbenchmarking рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ google-tool рдХреИрд▓рд┐рдкрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
рдпрд╣рд╛рдБ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ:
рд░реИрдЦрд┐рдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐
рд▓рдВрдмрд╛рдИ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд╣рдореЗрдВ рд░реИрдЦрд┐рдХ рдХреНрд░рдо
1000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 6.34 =
1000 ArrayListIteration 5.56 =
1000 рд▓рд┐рдВрдХреНрдбрд▓реАрд╕реНрдЯреЗрд░рд┐рдпреЗрд╢рди 5.93 =
100000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 827.68 ==
100000 ArrayListIteration 637.05 =
100000 рд▓рд┐рдВрдХреНрдбрд▓реАрд╕реНрдЯреЗрд░рд┐рдпреЗрд╢рди 1124.38 ==
1000000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 9056.77 ==========================
1000000 ArrayListIteration 6731.73 ==================
резрежреж,режрежреж рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯреЗрд░рд┐рдпреЗрд╢рди резрез.9режреж.реп рем ===================================
рд░реИрдВрдбрдо рдПрдХреНрд╕реЗрд╕:
рд▓рдВрдмрд╛рдИ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рд╣рдореЗрдВ рд░реИрдЦрд┐рдХ рдХреНрд░рдо
1000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 6.34 =
1000 ArrayListIteration 5.53 =
1000 рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ 5 5.97 =
100000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 844.30 ==
100000 ArrayListIteration 652.21 =
100000 рд▓рд┐рдВрдХреНрдбрд▓реАрд╕реНрдЯреЗрд░рд┐рдПрд╢рди 1106.90 ===
1000000 рдЕрдирд┐рдпрдВрддреНрд░рд┐рдд рд╕реВрдЪреА 9066.88 =============================
1000000 ArrayListIteration 6723.21 ======================
1,000,000 рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ 10,339.15 =====================================
рдХрд╛ рдЖрдХрд╛рд░:
рдПрдХ ArrayList рдХрд╛ рдФрд╕рдд рдЖрдХрд╛рд░ 45172432,000 рдмрд╛рдЗрдЯреНрд╕ // рдХрд╛рдлреА рдИрдорд╛рдирджрд╛рд░ рдкрд░рд┐рдгрд╛рдо рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдорд╛рддреНрд░рд╛ рдореЗрдВ рдХреНрд░рдорд┐рдХ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рд╕реНрдореГрддрд┐ рдХреА рдЦрдкрдд рдХрд╛ рд╕рдВрдХреЗрдд рд╣реИред
1KK рдХреЗ рд╕рд╛рде рдПрдХ ArrayList рдХрд╛ рдФрд╕рдд рдЖрдХрд╛рд░ 24000064,000 рдмрд╛рдЗрдЯреНрд╕ рд╣реИ
рдПрдХ рдЕрдирд░реЛрд▓рдбрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдПрдХ рдмрд┐рдЯ рдХрд╛ рдФрд╕рдд рдЖрдХрд╛рд░ 26250048,000 рдмрд╛рдЗрдЯреНрд╕ рд╣реИ
рдПрдХ рд▓рд┐рдВрдХреНрдбрд▓рд┐рд╕реНрдЯ рдореЗрдВ рдПрдХ рдмрд┐рдЯ рдХрд╛ рдФрд╕рдд рдЖрдХрд╛рд░ 56000048,000 рдмрд╛рдЗрдЯреНрд╕ рд╣реИ
рдпреЗ рд╡реЗ рдкрд░рд┐рдгрд╛рдо рд╣реИрдВ рдЬреЛ рд╕рд┐рджреНрдзрд╛рдВрдд рдХреЗ рдЕрдиреБрд░реВрдк рд╣реИрдВ)
рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдХреЛ рдЕрдкрдбреЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд░ рдХреЛрдИ рдЬреЛ рдЕрдкрдбреЗрдЯ рд╕реЗ рдкрд░рд┐рдЪрд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ рдпрд╛ рдЕрдкрдиреЗ рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рддрд╛ рд╣реИ - рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИред