How to compare previous and current item in for loop in bash?

Hey,
I am trying to compare formated login and logout dates from one user at a host which I have stored in a tmp directory in order to find out the total login time. I need to compare them in order to find overlapping intervals.

At first I tried to store each log in and logo date in an array but it doesn't work. Can anyone help me?

Give example data which you have tried to parse.

loginn()
for logu in $(ls /tmp/$lognam/wtmp*)
do
logina=$(echo $(last -f $logu -F $name) | cut -c40-63)
    for loga in $logina
    do loginn[$i]=$(echo "$(date +"%s" -d"$loga" 2>/dev/null)")
    i=$(($i+1))
    done
done

Here is example to calculate diff between login and session time ... easy to modify ..
using ksh93

#!/usr/bin/ksh
prev=""
name="someuser"

for logu in /tmp/$lognam/wtmp*
do
  last -f "$logu" -F "$name"
done  | while read line
do
 flds=($line)
        loginstart="${flds[4]} ${flds[5]} ${flds[6]} ${flds[7]}"
        loginend="${flds[10]} ${flds[11]} ${flds[12]} ${flds[13]}"
        [ "$loginstart" = "" ] && continue
        [ "$prev" = "" ] && prev="$loginstart" && continue
        epocnow=$(printf "%(%#)T" "$loginstart")
        epoclogout=$(printf "%(%#)T" "$loginend")
        epocprev=$(printf "%(%#)T" "$prev")
        ((logintime=epoclogout - epocnow))
        ((diff=epocprev-epocnow))
        ((h=diff/3600))
        ((s1=diff-3600*h))
        ((m=s1/60))
        ((s=s1-m*60 ))
        echo "$diff|$logintime|$prev|$loginstart|$h:$m:$s"
        prev="$loginstart"
done