Improved Low-Density Parity-Check Codes Using Irregular Graphs