Can the same random number be used in encryption and signing? In several public key algorithms, the person running the algorithm must generate a random number (that's separate from the key). Can this random number be the same for an encryption and a signature? For instance, if I'm encrypting a message with ElGamal and signing with DSA, can I use my random number from creating the DSA signature as the random input to ElGamal?
Generically speaking you can do this but you shouldn't. It may well be possible to perform specific calculations when a random number is used for both (I'll leave it to the more theoretically inclined to create a demo if this is possible for ElGamal / DSA). Another reason is that the single secret gets known then both keys/algorithms will be compromised. It's certainly harder to create a security analysis or proof if the one part of the protocol depends on the other.

You can however use your random number as input to a DRBG (deterministic random bit generator) and let that generate more random data. Then the separate values will not be dependent on each other (as long as the random bit generator is secure, of course).

When based on symmetric primitives (block ciphers/hash methods) DRBG's should perform favorably when compared against ElGamal or DSA, so the performance degradation should not be that much.