Your attempt "If a process is unable to change its state indefinitely because the resources requested by it are being used by another waiting process, then the system is said to be in a deadlock." is close, but not quite there.
A deadlock is a situation where one "process" (not a "process" as used in software development, but something more general) is waiting for a resource which will never become available because a second "process" is using the resource, and is waiting directly or indirectly for a resource that the first process is already using.
A situation where the second process doesn't stop using the resource just for the heck of it isn't a deadlock. A similar situation where the resource stops getting used, but everytime it stops being used some other process is quicker using it, is also not a deadlock (but an example of resource starvation, which is more general than deadlock).