Introduction to Algorithms, Third Edition


Size of inputs and cost of arithmetic computations



Download 4,84 Mb.
Pdf ko'rish
bet592/618
Sana07.04.2022
Hajmi4,84 Mb.
#534272
1   ...   588   589   590   591   592   593   594   595   ...   618
Bog'liq
Introduction-to-algorithms-3rd-edition

Size of inputs and cost of arithmetic computations
Because we shall be working with large integers, we need to adjust how we think
about the size of an input and about the cost of elementary arithmetic operations.
In this chapter, a “large input” typically means an input containing “large in-
tegers” rather than an input containing “many integers” (as for sorting). Thus,


31.1
Elementary number-theoretic notions
927
we shall measure the size of an input in terms of the
number of bits
required to
represent that input, not just the number of integers in the input. An algorithm
with integer inputs
a
1
; a
2
; : : : ; a
k
is a
polynomial-time algorithm
if it runs in time
polynomial in lg
a
1
;
lg
a
2
; : : : ;
lg
a
k
, that is, polynomial in the lengths of its binary-
encoded inputs.
In most of this book, we have found it convenient to think of the elemen-
tary arithmetic operations (multiplications, divisions, or computing remainders)
as primitive operations that take one unit of time. By counting the number of such
arithmetic operations that an algorithm performs, we have a basis for making a
reasonable estimate of the algorithm’s actual running time on a computer. Elemen-
tary operations can be time-consuming, however, when their inputs are large. It
thus becomes convenient to measure how many
bit operations
a number-theoretic
algorithm requires. In this model, multiplying two
ˇ
-bit integers by the ordinary
method uses
‚.ˇ
2
/
bit operations. Similarly, we can divide a
ˇ
-bit integer by a
shorter integer or take the remainder of a
ˇ
-bit integer when divided by a shorter in-
teger in time
‚.ˇ
2
/
by simple algorithms. (See Exercise 31.1-12.) Faster methods
are known. For example, a simple divide-and-conquer method for multiplying two
ˇ
-bit integers has a running time of
‚.ˇ
lg
3
/
, and the fastest known method has
a running time of
‚.ˇ
lg
ˇ
lg lg
ˇ/
. For practical purposes, however, the
‚.ˇ
2
/
algorithm is often best, and we shall use this bound as a basis for our analyses.
We shall generally analyze algorithms in this chapter in terms of both the number
of arithmetic operations and the number of bit operations they require.

Download 4,84 Mb.

Do'stlaringiz bilan baham:
1   ...   588   589   590   591   592   593   594   595   ...   618




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish