"... department with a lot of H-1Bs ..." Why does your department hire H1-Bs.
I don't know about other places, but Google hires a lot of H-1Bs because when you're trying to hire the top hundredth of one percent of talent, and you need tens of thousands of such people, the US just doesn't produce enough. Not because the US is bad at producing top software engineering talent, but because the US is only 4% of the world's population. Expanding the scope to include the whole world lets you find a lot more smart people.
The distribution at Google seems to be (from where I sat) about 1/3 from the US, 1/3 Asian (especially Indian and Chinese) and the other third made up of the rest. So, given that we're only 4% of the world's population, I'd say that Americans are pretty heavily overrepresented. Even more when you notice that the non-natives have a higher average education level. My team as it was when I stopped managing had three Americans, two with BS degrees and one with an MS, and we had five from other countries, three PhDs and two MS.
Is it only because they are cheaper than citizens.
They're not cheaper than citizens, they're more expensive than citizens. They get paid the same as citizens but Google covers their immigration legal expenses, which can easily be $10-20k every few years. Of course, that's peanuts compared to their salaries.