Characteristics Of A Good Algorithm In Programming