ВУЗ: Не указан
Категория: Не указан
Дисциплина: Не указана
Добавлен: 24.10.2024
Просмотров: 85
Скачиваний: 1
|
|
|
|
|
|
|
- |
20 |
- |
|
|
|
|
|
кортежа |
В |
можно упростить, |
умножив кортеж |
A j |
на число |
|||||||||
его повторений R j |
|
в множестве |
В |
. Для сокращения запи |
||||||||||
си множества |
В |
введем обозначения для одинаковых кортежей |
||||||||||||
|
так |
что |
Й |
|
Л |
- |
А |
Г |
|
, |
Такой кортеж будем на- |
|||
зывать сложным, т ,к , |
|
e j4 \эффективность не определена, Парамет- |
||||||||||||
ры нового элемента |
A i * |
можно вычислить по следующим зави- |
||||||||||||
симостям; |
|
|
|
'<1 |
|
|
|
|
|
|
|
|
||
|
(Rj> |
|
|
|
|
|
|
|
|
|
||||
|
|
|
|
|
|
|
|
|
|
|
|
|||
|
|
|
|
|
|
|
Ri |
d j |
• |
|
|
|
|
(1.6) |
|
|
ф ' |
- R, V |
|
|
|
|
|
||||||
|
|
|
|
|
|
|
|
|||||||
|
|
KfiJ |
- К, . |
|
|
|
|
|
|
|||||
|
|
|
|
|
|
- G, ■ |
|
|
|
|
|
|||
после чего сложный кортеж превращается в простой. |
|
|||||||||||||
Естественно, |
что |
|
и |
Q |
|
также будут изменять |
||||||||
ся и могут быть вычислены для каждого конкретного случая. |
||||||||||||||
■ Если алгоритм |
|
В |
|
содержит |
программы |
P j |
, повторя |
|||||||
ющиеся на наборном поле программы |
Р р . |
раз, |
то их можно рас |
|||||||||||
сматривать как некоторые алгоритмы |
Д ; |
, |
повторяющиеся R; |
|||||||||||
раз, для которых применимы операции |
(1 .6 ). |
|
|
|
||||||||||
Рассмотрим случай, |
когда алгоритм |
А ] |
повторяется |
|||||||||||
в цикле |
N j |
раз. |
Обозначим такие |
алгоритмы через |
" А |
|||||||||
и будем называть их кортежи сложными. |
Для нахождения простого |
|||||||||||||
кортежа |
р . ' |
i ' |
очевидны следующие соотношения: |
|
||||||||||
|
|
d |
- ф |
|
- |
d j . |
|
|
|
|
|
|||
|
|
№ |
|
|
. |
N |
i t |
, |
|
|
|
|
|
|
|
|
|
■j |
|
|
~ |
|
|
|
|
|
г > Ц ) V7:
(1 =7)
|
|
|
|
- 21 |
- |
|
|
|
|
Соотношения |
(1.7) |
применимы также для программ |
|
||||||
и програш |
* набранных на |
подпрограммном поле и повто |
|||||||
ряющихся в |
алгоритме управления |
h/j |
раз |
|
|||||
Если алгоритм А |
|
находится в сложном цикле (цикл |
|||||||
в цикле), при атом если |
У |
-цикл . |
( |
Ч |
= 1 , 2 , . , . , |
Y ) |
|||
повторяется |
М у |
раз, |
то |
система |
(1 .7) |
будет иметь |
вид |
. d r
d i •
■bj( v * ) ** Ni• Wa • • • Л/vfcj “ hi П N+ »
|
J x ] |
|
" K i |
r |
' " ' |
|
* Ki |
|
|
|
|
|
> ь |
|
|
( 1 . 8 ) |
|
||||
|
|
|
|
|
|
|
|
|
||
В общем случае алгоритм |
ELj |
множества Ь |
, |
имеющий |
||||||
сложный кортеж, |
может встречаться |
R j раз на наборном поле |
||||||||
вне цикла и 'f |
J |
раз в простых или сложных циклах. |
Пусть |
|||||||
Ч j -й |
алгоритм |
( |
|
= 1 , 2 , . . . , |
-'£ j) |
находится в |
У |
|||
циклах в |
цикле |
( |
Ч |
= 1 , 2 , . . . , |
) . |
При атом |
Ч |
-цикл |
||
повторяется |
|
|
р аз. |
Тогда |
^ |
|
|
|
||
d Ej - R j d i + ^ d j |
- ( R j + ^ ) d j , |
|
|
+ b i |
f l |
|
|
N |
|
ш ( j ? i |
|||
4 |
ЧЫ 1 |
|
4 |
fj-i twi N v H ' , |
^ ■ 6 i |
|
’ |
G *i - P 4 . |
Отсюда система преобразований сложного кортежа Ё^ простой для общего случая будет
d s j - ( R j + ^ ) d j *
|
|
|
|
|
|
- |
22 - |
|
|
|
|
its " ( R j |
+ 5 . |
П |
N ^ ) b ; , |
||||||
|
|
> |
|
* |
vr |
i |
|
|
4 |
' d |
|
|
|
|
|
|
|
|
|
|
(1.9) |
|
При |
*? |
= |
0 система |
(1.9) |
преобразуется в систему |
||||
(1 .6 ). |
При |
R, - |
о . |
4J = |
I получаем систему (1 .8 ). |
|||||
|
Таким ооразом, если алгоритм |
В |
содержит множество |
|||||||
сложных кортежей, |
то для перевода |
их в простые можно., исполь |
||||||||
зовать |
систему преобразований |
(1 .9 ), |
после чего оистемы опе |
|||||||
раций (1 .2 ), |
(1 .3 ), |
(1 .4 ), |
(1.5) позволяют получить |
|||||||
|
В - |
< Х а , Х г ь , . . . , X g s > . |
||||||||
|
Обозначим в |
системе |
(1.9) |
|
|
|
Rj |
+ Z |
П N't;* =Si2 . |
|
<I-I0) |
||||
|
4 |
|
V.L |
4 |
4 |
|
|
|
Здесь ^ j i |
- |
число |
одноименных |
j -x алгоритмов, набран |
||||
ных на наборном поле программы и подпрограммы; |
опреде |
|||||||
ляет количество обращений к данному |
„ |
j -му |
алгоритм в пронес |
|||||
се реализации |
алгоритма |
£> . |
|
|
|
|||
Чиоленные значения |
£ j L и |
u j z |
могут быть легко по |
|||||
лучены из операторной схемы алгоритма |
0> |
. Для этого над one |
раторной схемой необходимо провести ряд несложных преобразо
ваний. |
|
|
|
|
В операторной схеме ш(декоом |
р |
обозначим алгоритмы, |
||
размещенные на подпрограммном поле. |
Кроме того, |
стрелкой с чис |
||
яоы М |
над операторами обозначим, |
что данные операторы на |
||
ходятся в |
цикле о числом циклов N . |
|
|
|
Например. Пусть алгоритм |
имеет следующую опера |
|||
торную схему: |
|
^ |
|
|
М s С Вр Ар УС р Ур СС |
( i . i i ) |
где С , 5 , р |
I Д |
, |
, V - некоторые простые ал |
|
горитмы, кортежи которых определены. |
х |
|||
|
W |
|
|
|
|
A |
|
- это алгоритм (группа алгоритмов), |
|
который заключен в |
цикл с |
количеством циклов N |
►Здесь |
М- степень данного алгоритма. В соответствии о этим
обозначением перепишем ( I . I I ) в виде
М * С 6 р ( Л , ^ Р) 3 у ( C p ( y f <fp) a c / ( i
сСлв^ЛрчЛ’рОНЛ'с.
В соответствии |
с (1 .8) для |
"fc-j |
, |
если некоторый ал |
|||
горитм Д |
охвачен несколькими циклами с числом циклов N i . |
||||||
N a ......... |
N y , |
то |
его показатель степени |
||||
|
|
|
т |
|
|
|
|
т .е . |
Wa |
а |
П |
N + , |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
(1 л з) |
Перешшем ( I .I 2 ) , используя |
( I .I 3 ) , |
тогда |
|||||
М* с ВрЛ’рf |
ус у у |
|
с'с |
||||
|
л ’ &’р М ^ р У ^ с . |
|
|||||
|
|
|
|
|
|
|
(I .I4 ) |
Одноименные алгоритмы |
с индексом |
р |
можно аапаоать |
||||
один раз, т .к . они на |
наборном поле подпрограмм не повторяют |
ся, |
причем показатели степени этих алгоритмов складываются. |
|
|
Выделив эти алгоритмы в квадратные скобки а исключив г |
|
них |
индексы р |
, получим |
|
|
|
|
- 24 |
- |
|
M |
s |
С В р У С У С ’ С Л ' б р р С М У ^ ' ] . |
||||
|
|
|
|
|
|
< I.I5 ) |
|
Из выражения, приведенного в ( I .I 5 ) , можно найти вели |
|||||
чины |
Eji |
и |
С}г . |
. |
|
|
|
Для определения |
Ь U необходимо посчитать |
число одно |
|||
именных алгоритмов, включая также и подпрограммы, |
тогда |
|||||
t a |
" 5 , |
i e 2 > |
t y l *s 2 ) |
ip 1mA , Ей* * 2 , |
|
|
|
Для определения |
необходимо показатели |
стейени |
одноименных алгоритмов на наборном поле программ и подпрограмм оложить, тогда
Еса “ 9 . Еаа |
t n i miO , |
t fa “ 8 , |
1<$лж( 4 . |
|
Выше рассматривалась |
оценка параметров |
алгоритма |
£> |
, не |
содержащего условных И безусловных переходов (разветвлений). Для разветвляющихся программ оценивается отдельно па
раметр |
'fcrtiax » для ч его ‘рассматриваются |
только те алгоритмы, |
|
которые |
составляют максимальный путь по V- |
. |
Остальные па |
раметры определяются о учетом всех алгорт |
ов, |
условно отбросив |
|
разветвления. |
|
|
Одна и та же операция или функция мажет бить реализо вана множеством простых алгоритмов (набором алгоритмов по j -й операции)
A ji ” ^ Xjli, • * *)
vAj2 Xjii, • • • i
..........................................................................(1 .16)
Aj Mj* < XjNji,Xj^2,
выражение ( I . 16) может быть представлено в общем виде