Queue needed heroic, leave after the boss that drops your items.
Queue random heroic to try to get the dungeon you need, if not - leave the dungeon.
Someone is afk for 30 seconds or is just saying brb 1 min - insta kick.
Extra funny stuff happened today, where 10 people joined / were kicked / left before we even killed 1 boss
Unfortunately, there is no fair way Blizzard has figured out how to mark players as selfish or toxic without those same types of players taking advantage of it.
Add player reputation and decrease it if player leaves too often compared to other players, or if this player voting for kick of other player too often. If player reputation is lower then, let’s say, 95% of other players, then significantly increase his time in queue.