#NEWLINE# def left_rotate( self , node ) : #NEWLINE# #INDENT# 'Left rotation along a node' #NEWLINE# node_right_child = node . right_child #NEWLINE# if node_right_child : #NEWLINE# #INDENT# node . right_child = node_right_child . left_child #NEWLINE# if node_right_child . left_child : #NEWLINE# #INDENT# node_right_child . left_child . parent = node #NEWLINE# #UNINDENT# node_right_child . parent = node . parent #NEWLINE# #UNINDENT# if ( not node . parent ) : #NEWLINE# #INDENT# self . root = self #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# if ( node == node . parent . left_child ) : #NEWLINE# #INDENT# node . parent . left_child = node_right_child #NEWLINE# #UNINDENT# else : #NEWLINE# #INDENT# node . parent . right_child = node_right_child #NEWLINE# #UNINDENT# #UNINDENT# if node_right_child : #NEWLINE# #INDENT# node_right_child . left_child = node #NEWLINE# #UNINDENT# node . parent = node_right_child