Sensex Gains 326 Points, Nifty Ends Higher as Rupee Recovers Against Dollar