current current nextif(current =nullreturn falselink newlink new link(dd)/move to next link /didn' find it /make new link if(current==last/if last linknewlink next null/newlink --null last newlink/newlink <-last else /not last linknewlink next current next/newlink --old next /newlink <-old next current next previous newlinknewlink previous current/old current <-newlink current next newlink/old current --newlink return true/found itdid insertion /public link deletekey(double key/delete item wgiven key /(assumes non-empty listlink current first/start at beginning while(current ddata !key/until match is foundcurrent current next/move to next link if(current =nullreturn null/didn' find it if(current==first/found itfirst itemfirst current next/first --old next else /not first /old previous --old next current previous next current nextif(current==lastlast current previouselse next /last item/old previous <-last /not last /old previous <-old current next previous current previousreturn current/return value /