Hi Ruchi...
you are correct but i also want to share my definition...
Ad-hoc testing : Similar to exploratory testing, but often taken to mean that the testers have significant understanding of the software before testing it.
Exploratory testing : Often taken to mean a creative, informal software test that is not based on formal test plans or test cases; testers may be learning the software as they test it.
Hoc testing is a subset of Monkey testing. In this no Formal test cases are used; it is being done due to lack of The time. No testing approach is being used in this Ado Testing, Random Testing, Monkey Testing and Blind Testing are one and same When the time is very short to test the application we will Never follow the test execution with test cases we pick the Test case randomly and execute them to see the functional Flow..