前書き
どうも!絶賛就活中のグッピーです!
この度東証1部上場企業の自社開発と受託開発を行なっている会社様から内定をいただきました!!
これでメガベンチャーに安心して挑むことができます。
今回はそんなメガベンチャーに挑むのに必要なコーディングテスト対策のための備忘録です。
適宜編集しているので、よかったら覗いてみてください。復習になるかもしれないです。
調べたこと
ビット演算
数字を二進数方式で表したものを操作するもの。普通の数値を2進数に変換するには以下のような操作が必要
a=1
a=bin(a)
print(a)
=>0b1
二進数の書き方は以下の通りです
0b1
=>1
0b101
=>5
0埋めをする場合以下のようになります。
0b0001
0b0101
負数は先頭にマイナスをつけて表現します
-0b0001
左シフトのやり方
左シフトとは、ビットの位置を左にずらす演算です。つまり累乗のことですね
また、右シフトはその反対です。右に一個ずらすことは-2乗、左は+2乗ということです。
左シフトの場合<<の左側にシフトさせたい値、右側にシフト数を指定します。
右側シフトはその反対です
a=0b0001<<1
print(a)
=>2
a==0b0010>>1
print(a)
=>1
参照させていただいた記事