条件分岐で3種類の動作に分かれるようなコードが質問させてくださいあったとして、
その中の2種類がほとんど同じ処理の場合の最適なコードの書き方はどのようになりますでしょうか

■今はこう書いてます
if ( 条件A ){
   *************************************
   ** 共通の10〜20行の処理
   *************************************
   共通ではない処理
}else if ( 条件B ){
   *************************************
   ** 共通の10〜20行の処理
   *************************************
   共通ではない処理
}else if ( 条件C ){
   共通ではない処理
}

■このほうがいいのでしょうか
if ( ( 条件A )||( 条件B ) ){
   *************************************
   ** 共通の10〜20行の処理
   *************************************
   if ( 条件A ){
      共通ではない処理
   }else if ( 条件B ){
      共通ではない処理
   }
}else if ( 条件C ){
   共通ではない処理
}