Activity에 관하여 질문드립니다.

질문은 Acitivity 호출에 관련된 내용입니다.

1.Main Activity에서  버튼 클릭시 dialog가 호출 됩니다.
2.dialog에서 입력값을 넣은후 확인 클릭하면 A Activity를 호출하고  Main Activity는 finish() 시켯습니다.
3.A Activity에서 버튼 클릭하면 Main에서 호출했던 dialog가 호출되고 입력값이을 넣은후 클릭하면 기존 A Activity는 삭제후
   A Activity가 제호출됩니다.
4.A Activity에서  결과값이 리스트로 되어있는데 그리스트중 한개를 클릭하면 다시 메인으로 intent값을 넘깁니다(A Activity는 살아있음)

여기서 질문드립니다.
4번 의 메인 Acitvity에서 다시 dialog 호출후 2번3번과정을 무한 반복 할수있는데
     2번 다이얼로그 호출후 기존에 3번 호출되어있는 Activity 를 다시 호출 하려면 어떻게 해야될까요

제가 구연한 것에서는 A Activity가 계속 쌓여서요
뒤로가기 버튼 클릭시 전에  검색했던게 나오고 그래서요..
어떻게 해야될까요?