일단 제가 했던방법은,
sharedpreference로 구현한다고 가정했을때 ArrayList를 생성한 후 거기에 검색어를 하나씩 추가합니다.
추가한 후에 sharedpreference에 ArrayList를 jsonString으로 변환해서 String형태로 저장을 합니다.
삭제할때도 비슷한 로직으로 가면될것이구요,
중복된 단어 검색시에는 원래자리에 있던 단어를 지우고 리스트의 0번째로 삽입합니다.
마지막으로 검색어 저장갯수 최대치가 되면 제일 마지막에 있는 검색어를 지우고 새로운 검색어를 0번째에 삽입합니다.
가장 핵심은 arrayList를 jsonString형태로 변형해서 저장하고 불러오는것입니다.