In this paper, we derive, by presenting some suitable notations, three typical graph aLgorithms and corresponding programs using a unified approach, partition-and-recur. We putemphasis on the derivation rather than th...In this paper, we derive, by presenting some suitable notations, three typical graph aLgorithms and corresponding programs using a unified approach, partition-and-recur. We putemphasis on the derivation rather than the algorithms themselves. The main ideas and lugesnutty of these algorithms are revealed by formula deduction. Success in these examples givesus more evidence that partition-and-recur is a simple and practical approach and developingenough suitable notations is the key in designing and deriving efficient and correct algorithmicprograms.展开更多
The loop invariants take a very important role in the design,proof and derivation of the algorithmic program.We point out the limitations of the traditional standard strategy for developing loop invariants, and propos...The loop invariants take a very important role in the design,proof and derivation of the algorithmic program.We point out the limitations of the traditional standard strategy for developing loop invariants, and propose two new strategies for proving the existing algorithmic program and developing new ones. The strategies use recurrence as vehicle and integrate some effective methods of designing algorithms, e.g.Dynamic Programming,Greedy and Divide Conquer,into the recurrence relation of problem solving sequence.This lets us get straightforward an approach for solving a variety of complicated prob- lems,and makes the standard proof and formal derivation of their algorithmic programs possible.We show the method and advantages of applying the strategies with several typical nontrivial examples.展开更多
文摘In this paper, we derive, by presenting some suitable notations, three typical graph aLgorithms and corresponding programs using a unified approach, partition-and-recur. We putemphasis on the derivation rather than the algorithms themselves. The main ideas and lugesnutty of these algorithms are revealed by formula deduction. Success in these examples givesus more evidence that partition-and-recur is a simple and practical approach and developingenough suitable notations is the key in designing and deriving efficient and correct algorithmicprograms.
基金Research supported by the National Natural Science Foundation of China.
文摘The loop invariants take a very important role in the design,proof and derivation of the algorithmic program.We point out the limitations of the traditional standard strategy for developing loop invariants, and propose two new strategies for proving the existing algorithmic program and developing new ones. The strategies use recurrence as vehicle and integrate some effective methods of designing algorithms, e.g.Dynamic Programming,Greedy and Divide Conquer,into the recurrence relation of problem solving sequence.This lets us get straightforward an approach for solving a variety of complicated prob- lems,and makes the standard proof and formal derivation of their algorithmic programs possible.We show the method and advantages of applying the strategies with several typical nontrivial examples.