if we take *last as a pointer pointing to the last node of the list then we can point to the start node in o(1) by
and can do any thing that we can doing using the start as a pointer ,that's simple
so its your choice but we can achieve it using one pointer only
but i will suggest u to use last, because insertion at beginning and deletion at the beginning will cost u o(n) if u use start
because u will have to traverse all the list to find the last node so that after the insertion or the deletion option u can update the links.