I employ both methods.
As I buy new items in a given category, I am expected to donate one item in that exact same category. This hasn't always worked out so well because I am buying in categories I never bought for in the past (e.g., cardigans or leggings). So for every cardigan purchased, I am donating one topper (either a blazer, coat, or robe). Ideally, one day it will be cardigan for cardigan.
Meanwhile, for items that I purged earlier this year (like jewelry), I made a list of the items purged and if I should ever come across jewelry I love I'll buy it knowing I already purged jewelry earlier this year. Again, I might have problems matching category to category. For example, I purged all my watches. I don't intend to buy any watches in the future so "one in, one out" won't work for me. But I love earrings and I might buy new earrings as my "one in".
I have also purchased a new sweater and then stood at my closet and tried to decide what sweater-like item will be purged. This was painful.
As I gain more experience with this method, I assume things will match up better.