Write a recurrence relation for this modified Quicksort?
In a modified quicksort, you partition randomly on odd levels of recursive calls and on even levels you partition on the largest element. How do you write a recurrence relation for exactly how many comparisons quicksort will do?
algorithm quicksort relation recurrence
add a comment |
In a modified quicksort, you partition randomly on odd levels of recursive calls and on even levels you partition on the largest element. How do you write a recurrence relation for exactly how many comparisons quicksort will do?
algorithm quicksort relation recurrence
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49
add a comment |
In a modified quicksort, you partition randomly on odd levels of recursive calls and on even levels you partition on the largest element. How do you write a recurrence relation for exactly how many comparisons quicksort will do?
algorithm quicksort relation recurrence
In a modified quicksort, you partition randomly on odd levels of recursive calls and on even levels you partition on the largest element. How do you write a recurrence relation for exactly how many comparisons quicksort will do?
algorithm quicksort relation recurrence
algorithm quicksort relation recurrence
asked Nov 11 '18 at 17:52
Michael LinMichael Lin
102
102
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49
add a comment |
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53251531%2fwrite-a-recurrence-relation-for-this-modified-quicksort%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53251531%2fwrite-a-recurrence-relation-for-this-modified-quicksort%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Exactly sounds a little weird when you consider a random variable ?!
– Yves Daoust
Nov 11 '18 at 18:11
Can you provide the recurrence relation for the case of ordinary Quicksort ?
– Yves Daoust
Nov 11 '18 at 18:12
Yes. T(n) = T(n/4) + T(3n/4) + (n-1) for average case.
– Michael Lin
Nov 12 '18 at 0:36
Then it suffices to add a term n-1 to find the largest element, then another term n-1 to perform the partition with this pivot, and replace n by n-1, as the partition will just leave the largest element apart. T(n)=2(n-1)+T((n-1)/4)+T(3(n-1)/4)+(n-2).
– Yves Daoust
Nov 12 '18 at 13:49