Date: Wed, 26 Feb 1997 14:58:09 -0600 (CST) From: Andrew Deren To: djgpp Subject: Sorting algorithms Message-ID: MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-2140050092-1494730741-856990689=:697" This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. Send mail to mime AT docserver DOT cac DOT washington DOT edu for more info. ---2140050092-1494730741-856990689=:697 Content-Type: TEXT/PLAIN; charset=US-ASCII I hope someone can help me with this. I am supposed to write a program that counts the times it takes for the selection sort and merge sort and compare them. I got the program working but somehow when I get to 14000 elements I get the error. Can someone tell me what am I doing wrong? Attached is the program. Thanks in advance. ---2140050092-1494730741-856990689=:697 Content-Type: TEXT/plain; name="p1.c" Content-Transfer-Encoding: BASE64 Content-ID: Content-Description: DQovKiBJbmNsdWRlIHByZWRlZmluZWQgaGVhZGVyIGZpbGVzICovDQojaW5j bHVkZSA8c3RkaW8uaD4NCiNpbmNsdWRlIDxzdGRsaWIuaD4NCg0KLyogZGVm aW5lIHNpemUgb2YgdGhlIGFycmF5IGFuZCBsaXN0ICovDQojZGVmaW5lIElO UFVUX1NJWkUgMTAwMA0KDQovKiBMSVNUIGlzIGEgcG9pbnRlciB0byBDRUxM ICovDQp0eXBlZGVmIHN0cnVjdCBDRUxMICpMSVNUOw0KDQovKiBsaW5rZWQg bGlzdCBzdHJ1Y3R1cmUgKi8NCnN0cnVjdCBDRUxMIHsNCglpbnQgZWxlbWVu dDsJLyogaW50ZWdlciBlbGVtZW50IG9mIGxpc3QgKi8NCiAgIExJU1QgbmV4 dDsJCS8qIHBvaW50ZXIgdG8gbmV4dCBDRUxMICovDQp9Ow0KDQovKiBHZW5l cmF0ZXMgYSBsaXN0IG9mIGludGVnZXJzIGFuZCBzdG9yZXMgaW4gdGhlIGxp bmtlZCBsaXN0Lg0KCVNlbmRzIGJhY2sgYSBwb2ludGVyIHRvIHRoZSBiZWdp bm5pbmcgb2YgdGhlIGxpc3QgKi8NCkxJU1QgR2VuZXJhdGVfaW50ZWdlcnMo KQ0Kew0KIAlMSVNUIGhlYWQsIHRhaWw7CS8qIGJlaW5ubmluZyBhbmQgZW5k IG9mIGxpc3QgKi8NCiAgIGludCBpOwkJCQkvKiBsb29wIGNvdW50ZXIgKi8N CiAgIA0KICAgLyogYWxsb2NhdGUgbWVtb3J5IGZvciB0aGUgZmlyc3QgQ0VM TCAqLw0KCWhlYWQgPSAoTElTVCltYWxsb2Moc2l6ZW9mKHN0cnVjdCBDRUxM KSk7DQoJDQoJLyogR2l2ZXIgZXJyb3IgbWVzc2FnZSB3aGVuIG5vdCBhYmxl IHRvIGFsbG9jYXRlIG1lbW9yeSAqLw0KCWlmICghaGVhZCkgew0KCQlwcmlu dGYoIkVycm9yIGFsbG9jYXRpbmcgbWVtb3J5LlxuIik7DQoJCWV4aXQoMSk7 CS8qIGV4aXQgcHJvZ3JhbSAqLw0KCX0NCgkvKiBwdXQgcmFuZG9tIG51bWJl ciBpbiB0aGUgZWxlbWVudCAqLw0KICAgaGVhZC0+ZWxlbWVudCA9IHJhbmQo KTsNCiAgIC8qIHNldCBuZXh0IGVsZW1lbnQgdG8gTlVMTCAqLw0KICAgaGVh ZC0+bmV4dCA9IE5VTEw7DQogICAvKiBzZXQgdGFpbCB0byBwb2ludCB0byBo ZWFkICovDQogICB0YWlsID0gaGVhZDsNCiAgIA0KICAgLyogYWxsb2NhdGUg SU5QVVRfU0laRSBDRUxMcyBhbmQgcHV0IElOUFVUX1NJWkUgcmFuZG9tIG51 bWJlcnMgaW4NCiAgIAllbGVtZW50cyAqLw0KICAgZm9yIChpPTA7IGk8SU5Q VVRfU0laRTsgaSsrKSB7DQogICAgICB0YWlsLT5uZXh0ID0gKExJU1QpbWFs bG9jKHNpemVvZihzdHJ1Y3QgQ0VMTCkpOw0KICAgICAgaWYgKCF0YWlsKSB7 DQogICAgICAJcHJpbnRmKCJFcnJvciBhbGxvY2F0aW5nIG1lbW9yeS5cbiIp Ow0KICAgICAgCWV4aXQoMSk7DQogICAgICB9DQogICAgICB0YWlsID0gdGFp bC0+bmV4dDsNCiAgICAgIHRhaWwtPmVsZW1lbnQgPSByYW5kKCk7DQogICAg ICB0YWlsLT5uZXh0ID0gTlVMTDsNCiAgIH0NCiAgIC8qIHJldHVybiB0aGUg cG9pbnRlciB0byB0aGUgYmVnaW5uaW5nIG9mIHRoZSBsaXN0ICovDQoJcmV0 dXJuIGhlYWQ7DQp9DQoNCi8qIGNvcGllcyB0aGUgY29udGVudCBvZiB0aGUg bGlua2VkIGxpc3QgdG8gYXJyYXkgKi8NCnZvaWQgQ29weV9saXN0MmFycmF5 KExJU1QgaGVhZCwgaW50ICpBKQ0Kew0KICAgaW50IGk7CQkvKiBsb29wIGNv dW50ZXIgKi8NCiAgIC8qIGNvcHkgSU5QVVRfU0laRSBlbGVtZW50cyAqLw0K ICAgZm9yIChpID0gMDsgaTxJTlBVVF9TSVpFOyBpKyspIHsNCiAgICAgIEFb aV0gPSBoZWFkLT5lbGVtZW50OwkvKiBBW2ldIGlzIHRoZSBlbGVtZW50IGZy b20gdGhlIGxpc3QgKi8NCiAgICAgIGhlYWQgPSBoZWFkLT5uZXh0OwkJLyog cG9pbnQgdG8gbmV4dCBlbGVtZW50ICovDQogICB9DQp9DQoNCi8qIHByaW50 cyB0aGUgbGlzdCBhbmQgdGhlIGFycmF5ICovDQp2b2lkIFByaW50X2xpc3Rf YW5kX2FycmF5KExJU1QgaGVhZCwgaW50ICpBKQ0Kew0KIAlpbnQgaTsJLyog bG9vcCBjb3VudGVyICovDQogICBwcmludGYoIlxuQ29udGVudCBvZiB0aGUg TGlzdDogXG4iKTsNCiAgIC8qIHByaW50IElOUFVUX1NJWkUgZWxlbWVudHMg ZnJvbSB0aGUgbGlzdCAqLw0KICAgZm9yIChpPTA7IGk8SU5QVVRfU0laRTsg aSsrKSB7DQogICAgICBwcmludGYoIiUxMGRcbiIsIGhlYWQtPmVsZW1lbnQp Ow0KICAgICAgaGVhZCA9IGhlYWQtPm5leHQ7CS8qIHBvaW50IGhlYWQgdG8g bmV4dCBlbGVtZW50ICovDQogICB9DQogICANCiAgIC8qIHByaW50IElOUFVU X1NJWkUgYXJyYXkgZWxlbWVudHMgKi8NCglwcmludGYoIlxuQ29udGVudCBv ZiB0aGUgQXJyYXk6IFxuIik7DQogICBmb3IgKGk9MDsgaTxJTlBVVF9TSVpF OyBpKyspDQogICAgICBwcmludGYoIiUxMGRcbiIsIEFbaV0pOw0KfQ0KDQov KiBzZWxlY3Rpb24gc29ydCBmdW5jdGlvbiAqLw0Kdm9pZCBTZWxlY3Rpb25f c29ydChpbnQgKkEpDQp7DQogCWludCBpLCBqLCAvKiBsb29wIGNvdW50ZXJz ICovDQogCQlzbWFsbCwgLyogc21hbGxlc3QgZWxlbWVudCBzbyBmYXIgKi8N CiAJCXRlbXA7CSAvKiB0ZW1wb3JhcnkgdmFyaWFibGUgZm9yIHN3YXBpbmcg YXJyYXkgZWxlbWVudHMgKi8NCiAJCQ0KIAkvKiBnbyBJTlBVVF9TSVpFIHRp bWVzIHRocm91Z2ggdGhlIGFycmF5IHRvIGZpbmQgdGhlIHNtYWxsZXN0IGVs ZW1lbnQgKi8JDQogICBmb3IgKGk9MDsgaTwgSU5QVVRfU0laRTsgaSsrKXsN CiAgICAgIHNtYWxsID0gaTsJLyogc21hbGxlc3QgZWxlbWVtbnQgaXMgaXRo IHNvIGZhciAqLw0KICAgICANCiAgICAgIGZvciAoaj1pKzE7IGo8SU5QVVRf U0laRTsgaisrKSB7DQoJCQlpZiAoQVtqXSA8IEFbc21hbGxdKSAgc21hbGwg PSBqOwkvKiBmaW5kIHRoZSBzbWFsbGVzIGJldHdlZW4gaSsxIGFuZA0KCQkJ CQkJCQkJCQkJCQkJSU5QVVRfU0laRSAqLw0KICAgICAgfQ0KICAgCXRlbXAg PSBBW3NtYWxsXTsJLyogc3dhcCB0aGUgaXRoIGVsZW1lbnQgd2l0aCBzbWFs bGVzdCAqLw0KICAgICAgQVtzbWFsbF0gPSBBW2ldOw0KICAgICAgQVtpXSA9 IHRlbXA7DQogICB9DQp9DQoNCi8qIG1lcmdlIHR3byBsaXN0cyB0b2dldGhl ciAqLw0KTElTVCBtZXJnZShMSVNUIGxpc3QxLCBMSVNUIGxpc3QyKQ0Kew0K CS8qIGlmIGxpc3QxIGlzIE5VTEwgcmV0dXJuIGxpc3QyICovDQogCWlmIChs aXN0MSA9PSBOVUxMKSByZXR1cm4gbGlzdDI7DQogCS8qIGlmIGxpc3QyIGlz IE5VTEwgcmV0dXJuIGxpc3QxDQogICBlbHNlIGlmIChsaXN0MiA9PSBOVUxM KSByZXR1cm4gbGlzdDE7DQogICANCiAgIC8qIGlmIGVsZW1lbnQgZnJvbSBs aXN0MSBpcyBzbWFsbGVyIHRoYW4gZWxlbW50IGZyb20gbGlzdDINCiAgIAlz ZXQgbmV4dCBlbGVtbnQgb2YgbGlzdDEgdG8gbWVyZ2UobGlzdDEtPm5leHQs IGxpc3QyKSAqLw0KICAgZWxzZSBpZiAobGlzdDEtPmVsZW1lbnQgPD0gbGlz dDItPmVsZW1lbnQpIHsNCiAgICAgbGlzdDEtPm5leHQgPSBtZXJnZShsaXN0 MS0+bmV4dCwgbGlzdDIpOw0KICAgICByZXR1cm4gbGlzdDE7DQogICB9DQog ICAvKiBpZiBlbGVtZW50IGZyb20gbGlzdDIgaXMgc21hbGxlciB0aGFuIGVs ZW1lbnQgZnJvbSBsaXN0MQ0KICAgCXNldCBuZXh0IGVsZW1lbnQgZnJvbSBs aXN0MiB0byBtZXJnZShsaXN0MSwgbGlzdDItPm5leHQpICovDQoJZWxzZSB7 DQogICAgIGxpc3QyLT5uZXh0ID0gbWVyZ2UobGlzdDEsIGxpc3QyLT5uZXh0 KTsNCiAgICAgcmV0dXJuIGxpc3QyOw0KICAgfQ0KfQ0KDQovKiBzcGxpdCBh IGxpc3QgaW50byB0d28gbGlzdHMgKi8NCkxJU1Qgc3BsaXQoTElTVCBsaXN0 KQ0Kew0KIAlMSVNUIHBTZWNvbmRDZWxsOwkvKiB0ZW1wb3JhcnkgbGlzdCAq Lw0KICAgaWYgKGxpc3QgPT0gTlVMTCkgcmV0dXJuIE5VTEw7CS8qIGlmIGxp c3QgaXMgZW1wdHkgcmV0dXJuIE5VTEwgKi8NCiAgIA0KICAgLyogaWYgbGlz dCBoYXMgb25seSAxIGVsZW1lbnQgcmV0dXJuIE5VTEw7IG5vdGhpbmcgdG8g YmUgc3BsaXQgKi8NCiAgIGVsc2UgaWYgKGxpc3QtPm5leHQgPT0gTlVMTCkg cmV0dXJuIE5VTEw7DQogICBlbHNlIHsNCiAgICAgcFNlY29uZENlbGwgPSBs aXN0LT5uZXh0OwkvKiB0ZW1wIGxpc3QgaXMgc2V0IHRvIG5leHQgZWxlbWVu dCAqLw0KICAgICANCiAgICAgLypuZXh0IGVsZW1lbnQgaXMgc2V0IHRvIGxp c3QtPm5leHQtPm5leHQgKi8NCiAgICAgbGlzdC0+bmV4dCA9IHBTZWNvbmRD ZWxsLT5uZXh0OyANCiAgICAgDQogICAgIC8qIHNwbGl0IHJlbWFpbmluZyBs aXN0ICovDQogICAgIHBTZWNvbmRDZWxsLT5uZXh0ID0gc3BsaXQocFNlY29u ZENlbGwtPm5leHQpOw0KICAgICAvKiByZXR1cm4gcG9pbnRlciB0byBzZWNv bmQgbGlzdCAqLw0KICAgICByZXR1cm4gcFNlY29uZENlbGw7DQogICB9DQp9 DQoNCi8qIG1lcmdlIHNvcnQgZnVuY3Rpb24gKi8NCkxJU1QgTWVyZ2Vfc29y dChMSVNUIGxpc3QpDQp7DQogCUxJU1QgU2Vjb25kTGlzdDsJLyogc2Vjb25k IGxpc3QgKi8NCiAJDQogCS8qIGlmIGxpc3QgaXMgZW1wdHkgcmV0dXJuIE5V TEwgKi8NCiAgIGlmIChsaXN0ID09IE5VTEwpIHJldHVybiBOVUxMOw0KICAg LyogaWYgbGlzdCBoYXMgb25seSBvbmUgZWxlbWVudCBub3RoaW5nIHRvIGJl IHNvcnRlZCAqLw0KICAgZWxzZSBpZiAobGlzdC0+bmV4dCA9PSBOVUxMKSBy ZXR1cm4gbGlzdDsNCiAgIGVsc2Ugew0KICAgCS8qIHNwbGl0IHRoZSBsaXN0 IGluIHR3byBsaXN0czogU2Vjb25kTGlzdCBhbmQgbGlzdCAqLw0KICAgICBT ZWNvbmRMaXN0ID0gc3BsaXQobGlzdCk7DQogICAgIC8qIGtlZXAgY2FsbGlu ZyBNZXJnZV9zb3J0IG9uIHNtYWxsZXIgYW5kIHNtYWxsZXIgbGlzdHMNCiAg ICAgCQlhbmQgbWVyZ2UgdGhlbSAqLw0KICAgICByZXR1cm4gbWVyZ2UoTWVy Z2Vfc29ydChsaXN0KSwgTWVyZ2Vfc29ydChTZWNvbmRMaXN0KSk7DQogICB9 DQp9DQoNCnZvaWQgbWFpbih2b2lkKQ0Kew0KCUxJU1QgaGVhZDsNCiAgIGlu dCBBW0lOUFVUX1NJWkVdOw0KICAgaW50IGNvdW50Ow0KICAgbG9uZyBiZWZv cmUsIGFmdGVyOw0KDQogICBzcmFuZCgodW5zaWduZWQgaW50KXRpbWUoMCkp Ow0KICAgcHJpbnRmKCJJbml0aWFsIHJhbmQ6ICVkXG4iLCByYW5kKCkpOw0K CQ0KCXByaW50ZigiR2VuZXJhdGluZyBpbnRlZ2Vycy5cbiIpOw0KICAgaGVh ZCA9IEdlbmVyYXRlX2ludGVnZXJzKCk7DQoNCglwcmludGYoImNvcHlpbmcg bGlzdCBcbiIpOw0KICAgQ29weV9saXN0MmFycmF5KGhlYWQsIEEpOw0KDQog IC8qIFByaW50X2xpc3RfYW5kX2FycmF5KGhlYWQsIEEpOyovDQoNCiAgIGJl Zm9yZSA9IGNsb2NrKCk7DQogICBwcmludGYoIm1lcmdlIHNvcnRpbmcgXG4i KTsNCiAgIGhlYWQgPSBNZXJnZV9zb3J0KGhlYWQpOw0KICAgYWZ0ZXIgPSBj bG9jaygpOw0KDQogICBwcmludGYoInRpbWUgZm9yIE1lcmdlIHNvcnQgb2Yg c2l6ZSAlZDogJWZcbiIsIElOUFVUX1NJWkUsIChhZnRlci1iZWZvcmUpLzEw MDAwMDAuMCk7DQoNCiAgIGJlZm9yZSA9IGNsb2NrKCk7DQogICBTZWxlY3Rp b25fc29ydChBKTsNCiAgIGFmdGVyID0gY2xvY2soKTsNCg0KICAgcHJpbnRm KCJ0aW1lIGZvciBTZWxlY3Rpb24gc29ydCBvZiBzaXplICVkOiAlZlxuXG4i LCBJTlBVVF9TSVpFLCAoYWZ0ZXItYmVmb3JlKS8xMDAwMDAwLjApOw0KICAv KiBQcmludF9saXN0X2FuZF9hcnJheShoZWFkLCBBKTsqLw0KfTsNCg0K ---2140050092-1494730741-856990689=:697--