To concatenate u should have have both the head and tail pointer,u have it in circularly doubly linked list.
For Singly,Doubly LL,Array implementation of LL we need O(min(m,n)) time as we need to get hold of tail one of the lists in order to concatenate it with another.