It could be a number of things....It could be fouled spark plugs, faulty/fouled oxygen sensor, a defective or gunked-up idle speed control (ISC) motor, leaking injectors, a cracked vacuum hose, or a damaged intake manifold gasket. High idle can also be caused by a throttle cable or cruise control cables that are too tight.
Try starting out with the easiest first and work your way down to the hardest/costliest. I'd check also to see if your throttle cbale might be loose.
__________________
"Even through the darkest days, this fire burns, always"