Assuming you are talking about a relatively small system (24 cameras or less), and you're not looking to do any advanced things like create VLANs or do packet-tagging, you should not need any special switch.
Switches have a "backplane" or "fabric", which is the part of the circuitry that moves a packet coming in on one port out to another port. A long time ago some cheaper switches would have a backplane that was limited compared to the total number of ports on the switch. This would mean you might be able to get 100Mbps between any two ports, but not between all ports at the same time. As component costs have dropped, *most* modern switches have a backplane that allows for full speed operation with no bottlenecks.
Even an 8MP security camera is unlikely to utilize more than 12Mbps on average, a fraction of a 100Mbps port speed.
The bigger problem to watch out for is the number of cameras trying to feed into a single port connected to your NVR. You would want to make sure your NVR has a 1000Mbps (Gigabit) Ethernet port, and also watch out for ratings on the NVR itself in terms of total bandwidth it can handle. In most cases, the NVR is going to become a bottleneck before a modern switch will.
What about heavy system like 90 - 100 cameras.Could I group 24 cameras to one Gig switch , connect another 24 in another switch and so on. Finally connect all the cameras to a layer 3 catalyst core switch. Is this a good soution ?