Transcript
Page 1: An efficient algorithm for solving the partial sum query problem

�� ������� ����� � ��� ����� � ������� ��� ����� ������

�� � ����� ���

�������� ������ ������ ���������� ���� ������������� ��� �������� ����� �������

������ ���� !" �#$#�� %��

��������

�� ������� � � ������� ���� � ���� ������ �� ���� ������ ���� ���� �� ������

�� � �� ������ ���� �� ��� �� �� ����������� �� � ��� � ����� ��� �� �������� �� ���

���� ����� ��������� ���� � � ������ ����� ! �� ������ �� ���������� �� �����

�������� ��������� "#$�%& ��������� '(��� �� � � %��� �)� *�� +��� ,��� -�

"�../&0 � ��� �� �� ���� � � ������ ��� �������� ����� *� ��� ��� �� ���� ��

������� � � ������ ����� ��� �� � ����� �������� *� � �� ������ �� ������ ����

������ ��� � �� ������� ������ �� ������� ����� � �� ���� �� ��� � �� � �� ���

�������� ����� ��������� ���� �� � � ���� ����� � )11� -������ 2������ *�� �

�� �� ��������

� ���� ������

*� � � ������� �� �������� ������ '30� ���� � ���� ����� � ����� ������ ��� � � ��� �� ��� ������ �� � ��� ����� *� ������ � ��� ��� )� ����������� ))� ������� �������� �� � �� ������ #�� ������� �� �� ����� � )� ��������� ������������ ��� � � ������ ���� ��� �� �4�������� ! �������� � � ��������� ������ ��� �� 5���� � � ������ ������ �� ������� �� ��� ���� ������ ��� ������ ��� ��� �� ����������� ��� �������� � �� ��� �� �� ��������� �� �������� ���� � ��� ������� �� ��� ���� ����� ����������� !�

*���������� 2������� �67 ")11�& )839)3:��� ������� ���;�����;���

� !� � <�=.1:=3:)=/8.�> ��4� <�=.1:=3:)=3:1.

&���� �''����( �� �?������� ��=��� ��� "� �����& � ! �� ���� ��� ���� � �� � � ��� �� ��� �� � � @��������� �� +������� A�����

11)1=1)33;1�;B = ��� ����� ������ � )11� -������ 2������ *�� � �� �� ��������

%**� 2 1 1 ) 1 = 1 ) 3 3 " 1 � & 1 1 � 1 / = )

Page 2: An efficient algorithm for solving the partial sum query problem

������� � � ��)�� ��� �� � ����� �������� )���� �� ������������ �� ����� C������� �� ������ ���� ��� �������� 5���� � �� � � �������� ����� ��� ���������� �� D��� ��� ���� ��� � ������� ����� ����� ��� ���� �� ������ ����������� � �� ������ ���� �� ������� E�� �4����� �� � � �)� � ��� ���)� � � �� 81.3 ����� �� � � ��)����� "������ � � ����� ������& ��� ����� ��� �������� �� ������������� � �� �� ���� � ���� �� 83183 ����� *� ��� �11������� "����� ) 3F& ��� �������� ��� ������ 5���� � �� � � �������� 6..3����� ��� �� �������� �� ��� ���� ��� ��� � ���� �� 31.3 �����

�� ����� �������� ��������� "#$�%& ������ ��� ����� ��� ��� ������������� �� � �=��� ������� �� 1G� ��� �G� � ��� � � ��������� � �� � � ���=��������� ���� ���� �� ������� �� � � ����� ')0 ������� �� ��� ����� ���=����� ��� �� ������� ���� � � ������ ������� ��� � ������ �� � �������� ���������� ��� ����������� E�� ��������� ������� � �� 3� � � ������� ��� ���=����� 1��11 ��� �111� ��� �� ����� �� ��� � � ����� ��� � � ������� ���1� 2������� � � ������� ����1 ��� �1�11 ��� �� �������� ���� �� �� ������ � �������� 1�1�1 ! �� ����� ���� ��� ����� ������ ��� ������� ��� ���� �� '30��� � � ��� ��� ���� ��������� �����=����� ����� �� �� 5�� ������� �������� �� � �� �� . C������� � � ����� � ��� ��� ��������� �� � � ����� 2���������� ��� ��H������� ������� �����=��������� ����� '��6�80 ��� ��������� ������� ��� ��� ���� ��������� �� '30

*� � �� ������ �� ������ ���� ������ ��� � � ������� �� � �� ������ ����������� �� ����� � ��� ����� �� ! � �����I����� �� � �� ����� �� �� ��=��� 2������ ) ��������� � � ������ ������ ��� ������� ���� ������ ���� � ������� 2������ 6 �������� ��� ����� � ��� ����� � � ������ �� ����� 2������ 8 ���� � � ������ ���� ������ � � ����� � ��� 2������ 3 ��������� � �����

� �������������

! � ����� ������ �� �� 5�� � ������ ��� �� ������� "�� ������������ �� �=��� ��������& ��� � �� � �� ��� �� �������� �� ������ �� �� ������������ -�� � ��� ������� �� 1G� ��� �G� �� ����������� �� �� ������ "���� * �� "& ��=����� � ��� )� � � ! � ����������� ���� ��� ���� �� �������� +���� "����� '30&�

�������� � � �

� � �� � � ��� �������� �� � ��� �� ��� � ��� ��� � ����

� � �� � � �=��� ��������� �� ��� � ������ �� � � � ��� ��������� �� � �

� � �� � � �=��� ��������� �� ���� � ������ �� � � � ��� ��������� �� �

1 �� �������

�������������������

)8/ �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 3: An efficient algorithm for solving the partial sum query problem

! � �������� �������� � � �������� ��� ����� �������� ����������� �� �������* ��� "� ��� ������� � � ����� �� ���� �� ������ �� � �� ��� ���������� ��� 1�� ������

������� � *� � � 3� � � 5�� ������ ���� ����� ��� ������� �� ������� �� ��I� ���� �1111� 1�111� 11�11� 111�1� 1111� *� ���� ��������� ������ ���� ��� ���������������� �� � � �������� �11���� ��1��� ���1�� ����1�� � 3=��� ��������� ������� ��� �� �������� �� D��� � ���� ����� ����

�� 5��� ������� ���� ������ �� � � ��I� �� � � ������� � � � ���� � ������ �� ���� ��������� ������ ���� �� ������� �� ����� ���� �� ������ �� ��=������ �� � � ��� ���� ����� �� � �� � �� �� ������� ��� �� �������� �� �������

��/� &������� ��6 �� ������� ��)�� ����' �� � � ������

������� � ����� �� ������� ��� ������� ���� �� �� ���� ��� �������� ����� ���� � � �� ��� ������� ��� 7 ������ ������� ! �������� � ��������� ����� ��� �� �������� �� ������ � � ���) � � )� � � "����� ���� � ����������� �� � 1G�& #� ����� � �� ���������

� �

)�

�� � �

����������������������7 � )6��

����

! �� ���� � ���� ����� ��� � � ������ �� ������������ 7 !��� � ��������� �� ����� ��� ������� ����� �� �

���� &������� ��6 � ��6 ��� ��)�� ����' �� � � ������

J�� �� ������ ���� �� �� ��� ���� ����� ������ � �� �� � � ������

������� � ��� ��� ������� 2���� �)

������� ��� ��� �������� �� ���

5�� � �� ��� ���� ����� �� ��������� � � ������� � �� ��� ��� ����������� ��� ��������� �� 5��� ��5�� � � ������ �� ����� �������������

��������� � � �������� �������� ��� "K*(& �� � ���� �� ������� �� � �� �� ���� �� ������� �������� �� ���� � �� ������� ��� �� �������� ���������� �������

E�� �4����� �� � � 3� � � ��4 ������� �1111� 1�111� 11�11� 111�1� 1111� �������1 ���� �� K*( ��� ���� �� ������� �������� �� ���� � ��� �������

� �� �� ��� � �������� ! ��� �� �� ������� �� ���������/)

�� �3 ���

������� �� ������ � ��� ��4 �������

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )87

Page 4: An efficient algorithm for solving the partial sum query problem

*� � � �� �� ������� ���� �� �������� �������� ������� "��� ����K*(�& �� �� ��I� �� � �� �� ���� � �� ����� ��� ��� ������� J�4�� �� ��� ������ � � ����� �� �� ���� "K*()&� ��� �� �� *� ������ � � ����� ������ �� ��I� ��� � � ������ ����� K*( "K*()& �� �� ��I� �) ���� ��� �� �� ! ����� ����� � ���

K*(� �� ��I� �� ���� ��� �������� ��� � �� ��������K*() �� ��I� �) ���� ��� �������� ��� � �� � �) �������� ��� �� ��

J�� �� ���� �� 5�� K*(� ��� K*() ���� � � ������ ���������

����� � ��� ��� �� ������ ��� ��� �� ��� ���� �� �� �� �������� ������������� ���� ����

"�& ��� ��� � ���D����� ���� ��� �� ��� ��� ��� ������ �� ���� � ��11���11 ��� �11111� � ��������� ���� �� ������� ��������� �� ������� ��������� �� �� ������ �� ���� ��6� 8� 3� � ��� 7�� � ���

"�& �� ����� ��� ������� ������ ���� �� ����� ��� ��� �� � ���� �� ����� ����� ��� �� ���� �� �� � ���� � �� 1��1111 �� ��������� �����1111 ����������� �� ������� ��������� "��� �����& �� �� �������������� �� �� ��� ������ �� ���� �� �� �� �� ��������)� 6� � ��� )� 6�� � �)� 6� ��� ��)� 6� ��� )� 6�� � ��� )� 6��

"�& ��� ��� ������� ���� �� ���� �� � ��� �� ����� � �� ��� �� ����� ���� �� ���� �� � ��� �� ����� �� ��� �� ����� �� � �� ������11���11 ��� ���1111 ������ !� �� ������� ��������� "��� �����&�� �� ����� ��������� �� �� ��� ������ �� ���� ���� �� ���� �� �� ���� �������

����� A� ������������ � ��� ��� � � ��� � ��� ������������ �

*� � � ���� �� � � ������ �� ��� � ��� ��� ���� ��5������� �� ��������� ��������� ������� ���� � � �� �� ��� �����

����� � ��� ������ ���� ����� ������ ������ ���� �� ����� �� ��� ��� ������

!��� �

*����� ���� ������ ��� � � ������ ��� ����� ������

� $���� �����

/ ��

7 �/

: )6

. 6)

�1 83

�� /8

�) .1

)8: �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 5: An efficient algorithm for solving the partial sum query problem

����� 2������ ��� ������� �� ����� �� � ��� �=��� ��������� �� � �� ��� ���D������������ � � ������ ��� �� � � ��� ������ �� �������� �� ����� � � ��������������� ���� ������������ �� ��� ������ �������� � � �� ��� � � ��H������������� � � ��� ������ ���� ���� � � ������ ��� �� � � ��� ������ ���������� � � ��H������ ������� � � ��� ������� C������� �� � � ��� ������� ������ ���� ��� ������� �� ��5�� � � ��� ������ �� �������� � � ��������� ����� ��� � ����� ��������� �

����� � �� �� �� ��� �� �������� �������� ������ �� ��� ��������� �������� �� �� ��" ��

����� E�� ����� ���� �� ������� �� � ���� �� ������ ���D���� ������� "� � � ������� ����� ��� ���D����&� � � ������������ �� ��� ��� ������� �� � � ����� ��� ! � ����� ���� �� ������ �� ������� �������� � � � ��� ������ �� � ���� ���� *� � ������ �� ��� ��� ����� �� ��� ����������� �� � ������ ���D���� ������� ��� �� ) �� �� ������� C����� � � ����� ���� �� ������ �� ����������� ��� �� �� ��I� � �

����� � �� #$% ���� ��� ������� ��� �������� �������

����� *� ��� ������� ������ � �� � �� ������ �������� �� ������� ���� �� ������ � ��� ������ C����� ��� ���=��������� ������� ��� ����� �� �� K*(

��������� � � ��������� ������ �� ��� ������ �� � � ����� �� ���D���� �������

��������� � �� &=��������� ������ �� ������ �� � � ����� �� ���D���� �������

��������� � � �������������� ������ �� ��� ������ �� � � ����� �� ���D������������� �������

E� � ���� �� �4���� �� ���D���� ������� �� � � ����� ���� )=���������������� �� � � ������ ����� ��� ��� )=�������������� ������� �� ������������ ��� � � : ! �� ������� � ������ � �� ���������� J��� � �� ������� ���� ��� �� � � �������� ������� �� � ��� � ����

������� � �� ��" �� �� �� �� #$% '#$%�( ��

�� �8

� �� �

�/

� �� � �

8���

� �� �

�� ��� � �� 1 �� � �� � ����� �� 8 ��� � �� ��������

����� 2���� "���� $���� 8&� �� K*( ������ ������� ��������� �������� � ��������� �� ������� �� � � ����� K*( ��� ����� �� ������� ���� ��� ������� �����

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )8.

Page 6: An efficient algorithm for solving the partial sum query problem

"�& 2�� ) ��������� �� ������ ��D���� ������� "�& 2�� * ��������� �� ���=��������� ��������� ������� ������ ���� ��� )

2���� 2�� * �� ������� ���� ��� ) �� ������ ���������� "��� ���������������&��� ������ � � ����� ��� * ��� ���� ����� ��� � � ����� ) ! �������� ����������� � � ����� K*( �� ���� � � ����� ������� )� 5�� � � ������������ 2�� * �������� ���� ��� ��� ������� � � ��� ���� E��� $���� 6� � ������ ��� ) �� �� ��I� � ! � ����� ��� *� ��� �� ������ �� ������� � ���=��� � �� )=���������� ! �� ���� � ��4���� K*(� ��I� �� �� ��)���8 � � )� +� � �� �� ��� ����� �� �� ��" �� #$%�

J��� �� �� ��� � �� ����� ������ ������������ �������� ������� �������� �� ������� ����� ������������� ��� ��� ��� �� ��������� � )=��������� ����� ������ ����������� ��� � � ��� �������� �������� ����� �� ��� �� ����������� � �� �� ��� ��������� C����� )=���������� ���� �� ������� ���� �K*( ! � ��4� ����� ������ �� ���������� ��� �� �������� �� ����������� � ������ � �� 6=���������� A��� � 6=��������� �� ���� �� ������ ��� ����������������� ��� � � � ��� �������� ������� ����� � � ��H������ �� � � 6=���=������ ��� ��� �� � � ��������� ������� �� ���� �� � � ��� �� � � �� �� ������������ ������� C����� � � ��4� ������ ������ ����������� ��������� �� �8=��������� ! ��� ������� ��� � � ����� ���� �� ������ ���D���� ���������� ������ � ������ � �� 8=���������� ���� � �� ��� ����� �� � � ����������� �� ������ ����������� ������� "�� K*(�& ! � �4��� �4�������� ���� �� ���

�8

� �� �

�/

� �� � �

8���

� �� �

�� ��� � �� 1 �� � �� � ����� �� 8 ��� � �� ��������A������� � �� � �� ��� � ����� �� 8� � �� �������� �� ��������� � ��������=������ � �� �������� � � ������ ��� "� � � � � ���� ��� �& �

E�� �4����� E� ) ��������� K*(� ��� � � 7 ! � ���D���� ������� ������� �)�� �6�� �8�� �3�� �/�� ��� L7M "��� ��� �� ����������� �� � � �������� ��� � � ���� � � L)M �� 1�11111& ! � ����� ���� ��� ���������� � ��� �������

E� � ,��D���� �������� ���������� ��� ��������������� ��� � � :

)31 �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 7: An efficient algorithm for solving the partial sum query problem

! � ��4� ����� ��� � ��� � ��������� ��� � � ��������� ��� � ��� � � ��=������������ ! �������� � � ��I� �� K*(� �� .

�������! � �� ����� �� �� #$% "#$% & �� �� ��"

�)

� �� �

:

� �� �

6)

� ��

! �� ����� ����� ���� ! ����� � *� � �� ����� � � �������� ������� �� ���, �� ��� ������ K*() ���� �� �� ��I� ) ��� ! �� ���� �� ��) ���D����������� �� ��� ������� � �� ���� �� �� ���� ��������� ������� �� ���������� ���� � �� ���� �� ������ 8 �� � ���� ������ ���� �� �� � � ��4������ K*( ! ��� � � ����� �4�������� �� �������� �� �� ��� ������ , ��K*() ������� � �� ������ �� ������ ������� �� K*(� ��� ������ �� ��=�������

! ����� � ��� +������ � ��� �� �� ������� � � ��I� �� K*(� ���K*() �� ����� !��� ) � ��� ���� ����� ������ �� � ��� ���������� *��������� ����� � �� K*(6� K*(8�� � �� ��� ��� ������� �� K*()� ��� ��K*() ��� �� ���� �� �� ����� ����� ��� � �� �� ��� ��� ��� � ��� ����������� �� ������ � �� ��� ���� ����� ��� � � ������ ��� ����� ������ ��5��� �������� � � ������ �� ����� � �� �� ��� �������� �� � � ������ ���=

!��� )

!� ��� ���� ������ ��� � � ������ ��� ����� ������

� 2�I� �� �*8� ���� 2�I� �� �*8� ��)� J�� ���� �����

/ : 6 �)

7 . 8 �7

: �� 3 )8

. �) / 68

�1 �6 / 8:

�� �8 / /:

�) �/ 7 ./

E� ) ,��D���� �������� ���������� ��� ��������������� �� ���� K*( ��� � � 7

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )3�

Page 8: An efficient algorithm for solving the partial sum query problem

���� *� � � ������ �������� �� ������� ��� ��� ��� �� ��������� � �� � ����� � K*(� �� ��I� �� ��� �) K*()� �� ��I� �)

2�� ���� � ���� �� - �������� � � ����� �4�������� ��� � � ������ �� ������ �� �� ��� ������ �� ���� ���

� � ��� � � � �� � �)� � � � �� � )�)� � � � � �� � �)�)�� ��) � ���) � )�� � �)�)��)�

! �������� ���� ���������� � �� �4�������� ���� � � ���) � � � � ������������ ��� � ���

� � ���) � � ��) � ���) � )�� � �)�)��) �� )� � ��

A� ����������� ����������� ����� �� �� ��� �) �� � � ����� ������ ��� ���=������ ����� �� �� �� ��� ���� ��� � ! � �������� ��� � ��� �� !��� ) ! ��� ������ ��� �� ��� � �� � � ������ ���� ������ �� !��� � E�� �4�������� � � �) � � ���� ����� ��������� ��� �� ./ ���� .1

� ��"������ �#$%

! �� ������� ��������� ����� � %2@K ��� ������I�� � � ������ �������� ���� � �� ���� �� ����������� �� � �� � �� �� ������ ���� ���� �� �� �������� ���� � �� �� ��� ���� �� � � ������ �� � ��� �� ������ �� � ����� ����� ����� �� � �� ������ ������� ����� �� � � �������� ��� ������� � �� ��� �� �������� �� ��� ����� ���� ���� ������ ��=����� � � ������������ ������� � � ������� ��� ���� �����4 ! ���������� �� ������� �� ���� �� ����� ����� � %2@K "��� ����� �� E� 6& ��� ����=����� ����� �� � �� ������ ��� � � � ������ ������� �� ��I� � ����� ���� ��� ���� �� �� �������� ��� �� � ���� ����� �� ��� ����������������� ���� � �� �� ������� ��� �� �������� ���� � � ������� ��������� ��� ���� *� �� � ���=���� ����� � A�� ������ ��� ������ �4���� � ��� � ������ ���� ������ ��� � ������� ������ �� NN����GG ������� ���� � �5��� ���� "�� �������� �� � � � ��� ���� �����& ! � ������ �� ��� ������� �� ������ ���� � � 5��� ���� �� ���������� �� � ��������� ,������ � �� ��� �������� �� ������ � � ������� �� ��������� ����� �� � �+���� ������ "�� �� ��������� � ����& E����� ����� ��������� �� � ������� ����� � � � ������� ������� ��� ������� ��� ��� ��������� ��������������

-�� ��������� �� � � �� &���� ��� ������ ��� ��� ������ *� ��� ���� � ���� ������ �� � � ������ ���)�� ��� *����'�� ��� ������� ����� ��� � ������� ����� �� � � ������ �� ���� �� � �� � ������ ��� �� ������� �� � �������� !�� ������� ��� ���� �� ������� � ���������� ��� ���� � ���������+���� ��� &��������(

)3) �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 9: An efficient algorithm for solving the partial sum query problem

&�������� �� � � ������ �� ��) ������������ � �� ��� �� �������� ������� � � ��������� ������ �� ��� �� �� ������� +���� �� � � ������ �� ��) ������� � �� ��� �� �������� ���� ����� �

��������� ������ �� � � ���� ������ �������

E� 6 +��� ��� ����� � %2@K

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )36

Page 10: An efficient algorithm for solving the partial sum query problem

&�������� �������� � � ������������ �� � � ��������� ������ ��� ��� �� ��������� �������� �� � �� �� � �� ��� ���� ������� �� ��� C����� �� �� �������� �� � � ��������� ������� �� � ������ #� � � �� �� ���� +������������ � � ������������ �� � ���� ������ �� � � �����4� �� �� �� ������� � �� ��� ������ ���� � ���� *���������� ��� ���� �4���� &�������� �� �� ��������� ������� � �� ���� ��� ������� ��� ���� � ����� ��� +���� �� �� ��������� �� � � ����� ���� �� � � ����� � � �� � �� �� ������� ��� �����������

*� � � ����� �� ��� ����� �� � �� �� �4���� � � �������� ��� ���� &��������� �� � � ������ �������� ��������� ��� � � 5��� ��� ������� "���������� ��

E� 6 "+��������&

)38 �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 11: An efficient algorithm for solving the partial sum query problem

� � ��������� ��9������:&� ��� � �� ���� � ��������� ��������� � �� �� ���� ��� ��� �� +���� ��� &��������

! ��� � � ��� �������� ��� �� ������

�������� � *� ������ �� ������� ���������� � ����=�������

����=���������� � ���������������

�������� � *� ������ �� ������� ���������� �� ����=������ �

���������� � ����=����� � ��������������� ����=���������������� � ����=����� � ����������������

*� � �� �4��������� ��������� �� � ��� ��� ������ ��� �������� *���� �������+��

E����� ��������� �� ���� �� ��������� �� ��������� ) � �� ������� � � ������� � �� � � ��� ��������� ���� �� ������ � �� � � ������� ��������� ��� �� �������� � � ������� ��������� �� � � ���� � ���� �� ��� ���������

� '������

! �� ������� ��������� � � ��������� �� ����� � %2@K �� ��� %2@K��� �������� � � ���� ������� ��� � � / � ��� �) ! � ������ ��� ���������� !��� 6� ��� ��� � � ��������� ������� �� � �� � �� ���� �������� ! ����� ������� ���� � � ���� ������ �� ������� "������� � � � ��� �������&� �� ���� �� ������ �� � �� ��� �� �� �=��� ������ ��� �� �������� ���� � ������� ����� �� ��� ��� ����

#� �������� � � ������ �� !��� 6 ��� � � ���� ������ �� !��� )� �� ��������� � �� ����� � %2@K �������� ���������� �� E�� ��������� ���� � �1� �� ��� �) � � ���� ������� �� ����� )7F� 67F ��� 8�F ���� � � ����

!��� 6

O����� ���� ������ � � ����� � %2@K

� A��� ������� %�������� �����

K��=����� -��=����� 2�I�=����H ����

/ �6 � .3 1 �)3 8 �

�8 ) 61 1 �)3 8 �

7 )� ) 61 1 �63 7 6

: ). ) )3 1 �)3 . )

. 83 ) )3 1 �63 �) 3

�1 /� ) )1 1 �63 �. 7

�� .6 ) )1 1 �63 6� :

�) �6/ ) 61 1 �83 8) ��

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )33

Page 12: An efficient algorithm for solving the partial sum query problem

������ ����������� ! � ����� �������� �������� ��� � ��� � ��� ����� �������� ������ �� � � ����� �� � �� � �� ���� �������� �� �������4 � �� �� �������� ��� ����� �� � �� �� . ���� ���� �� '30� �� � � ���� �� ��� ��������������� ��� � �� ����� �� � ��� ��� ���� ����� �� ��������� ! � � ����������� ������������ �� � � ������ ������� ��� ����������� �� ������ ������������ � ��� )� � �

!� ���������� � � ��� ����������� �� %2@K� �������� �� �� ����� ���� � �������� � �� �� ������ ! � ��D������ �� � � ����� � �� �� 5�� ������� � ��������� ��� �� �� ������� "� � � ��� ���������& �� ��� ���� �� ������� ���"���=��������& ������� ! ��� ��� ��� ������� ��� ��� � ���� ��� �� ��� ���� ! � &�������� ���������� � �� �������� ��������� ������������ �� ��� ��������� ���� �� � � 5��� � ��� �� ��� ���� *� � � ������ � ���� �� ��� � ���������4 ��������� � �� �������� &�������� ��� +����� ���� �� ������� � ������������ � � ������ �� ��) ������� � �� ��� �� ������ �� ���D������� ��� � � �����'� �������' ������� 2��� ��� ���������� ����� �� � � 5��� ���� �������������� �� � � ������ ���� ! �������� � � ����� � ���� � ����=������������ �� � ���� ���

! � ���� �������� ���� �������� ��� �� � ������ ���� �� ����� ��� � ����� ���������� ! � ����� �� ����� �� � �� � � ���� ������ �� ��� � ���� ���� � ��������I�� �� � � ������ ������������������� ) )19) 61�&���������� 1 �)391 �83�,���� ��� � �� ����9������:� A������ �;6 ��� �;) �� � � ���� ����� ��� � � ���� ������ ��������� ��� � *� ���� ������ ������ ������ ���� ����� �� � �� ���� ! �������� �� ������

���� ��� ������� ��� ��� � � ���������� �� � �� ����� � � ����� � ����������� ������ +������������ ��� ��� �� � � ����� � �� ��� �4������� ��=����� �� �� � ����=������ ��������� ����� �

( ����������

! � ������ ��� ������ 5��� ����������� �� #$�% ��������� �� 5������������ � ��� ����� ��� ������� ���� ������ �� � �� ������ ��� � ����� �� � �� ��� �� ��� � �� � � ������ ������ ! ��� �� ��������� �� ������������ � ��� 5���� � � ������� ������ �� ������ ���� �� �� ������ *� �� �����=������ )=���� ����� � ����� �� � ���� ����������� �� ������� *� �������� ����������� � �� �� ���� ��=��5��� ����� ! � ������ � �� � �� � ������ � �������� ���������� �� ������ � � ������ #�� ����� � ��=����� � �� � � ������ ������� ��� ������ � ������� �� ��� ���� *� ���� �� ��=����� � � � ����� � ��� �� �4������ �� � � ���� � ��� � �� ���� �� ���4�� K�������� ������� ������� �� � � ����������� �� � � ����� � �� � � ���������

)3/ �� ,��� - *�.������� �������� /0# 1���/2 ��34�35

Page 13: An efficient algorithm for solving the partial sum query problem

����� ��� 5���� ��� �� ��� ���� ������ ���� � � ��������� ��������� ��� ��� �� �� ������ ��� ���� �� ������������

����� �� � '������ ��� � � �)� �� �� ��

2������ ��� � � �1� ������ � /�

��� )� 8� :� �/� 6)� /8� �):� )3/� 3�)� 61� ).� )7� )6� �1)6� �3� 7/:� 37/� ./�

�/1� /81� 6)1� 388� ��� )�� �.� �6� �7� )3� .� )1� �:� )::� )8� 7� 3� ))� �8� �)�

�1� ):� )/� 6� /� ./1� /1:� 88:� :./� ))8� 63)� :11� .):� �.)� :.3� :/6� 7/7�

/7)� 6:8� 763� 3��� 887��2������ ��� � � ��� ������ � .6

���)�8�:��/�6)�/8��):�)3/�3�)��1)8�37/��.:6�6)1��1::�/)�/��3.�33�

�.)�87�6��7/:�/81�)187�6:8��):1�81�6/��:�)8�)1�68��7�83�88�86�8)�

8���1�.�8:�66��8��6��)����8/�3/�67��.�.�6.�3)�6:�3�63�/1�3:�37�7�38�

36�/�3��31�))�8.�)��)3��7.���.�6�61�).�):�)7�)/�)6��3��363��36/���3)�

�87���688��)�/��/11�:6)��:33��1)6�:./�7/7��7)7�3����2������ ��� � � �)� ������ � �6/

��� )� 8� :� �/� 6)� /8� �):� )3/� 3�)� �1)8� )18:� /�� 3.� )�1)� 87� /81� 6:8�

�.)� )618� 617)� ��3)� 718� )3/1� 81/6� �1::� 6./7� )�7/� 6:6.� �6/�

816�� )��)� 81.3� 6)1� 37/� �7� 66� )37� 67� �.� 6:� )�� .� �):1� 81.8� 7)�

3� �36/� 7/:� 6� 8�� �6� 7� ��� 88� �688� 63� 3)� 31� 3)1� )::� 86� 83� 8)� )3�

6.� �8� )/� 8:� 617�� 37� 63:6� 6/� 66.)� 68� )7� �:� )8� )6� ))� )1� 36� 3��

8.� 38� 6/8:� 81� 67�)� 3:� 8/� ).� /1� �1� �)� ):� )1//� /� 61� 3/� )73)�

)86)� 88:� ))81� �3� )6/:� 6)/8� 6�6/� 63)� 76/� ):�/� 6:81� )/::�

�.6� ).88� 6:3� �87�� �7.)� )/)8� �7.�� :./� �//8� �)�/� 6:6�� :.3�

63:8� 63�.� �.)1� ).86� 6)11� )33.� �363� 66):� �/11� )187� �.�.� �1)6��

'���������

'�0 * ��������� � E���� +����� �� +����������� K�� �������� ������ �� � #4���� %����� #4�����

�.:.

')0 P (���� � A������ � � $������ C %��� �� � ,��� +���� � �������� �������� ��������

������I�� ����=��� �����=���� ��� ��������� ��� ! � %��������� �� � � �)� *�����������

+��������� �� ,��� -��������� J�� #������ �../� �� �3)9�3.

�� ,��� - *�.������� �������� /0# 1���/2 ��34�35 )37

Page 14: An efficient algorithm for solving the partial sum query problem

'60 O (�� ��� J 2����� #� � � ������� ������ �� ������ *--- !����������� �� *����������

! ���� *!=6� "6& "�.:3& 6:3981�

'80 O C������ +���� ��� *���������� ! ����� ������ �� � %�������=C�� -������ +�H��

JP� �.:/

'30 + C�� P A����� O ������ %�����=��� ������� �� #$�% ���� ����� ���� ������� ������ ���

! � %��������� �� � � �/� 2�������� �� %�������� �� ,������� 2������� K�� �..7� �� )):9

)67

)3: �� ,��� - *�.������� �������� /0# 1���/2 ��34�35


Top Related