Low Complexity Compensation of SOA Nonlinearity for Single-Channel PSK and OOK