Also to keep in mind is that elo gain/loss is proportional to the difference between your elo and your opponents. You'll gain a lot if you beat the rank 1 guy, but not very much if you beat a guy one rank ahead of you, and even less for somebody worse than you.
The reason ranks swap around so often is that the majority of the playerbase is hovering around the same elo tier - gaining just two points can rocket you upwards by hundreds of places.