diff options
author | Raymond Hettinger <python@rcn.com> | 2015-05-16 04:01:13 (GMT) |
---|---|---|
committer | Raymond Hettinger <python@rcn.com> | 2015-05-16 04:01:13 (GMT) |
commit | c784c6db6056729427b8e61161101e4bb5d73150 (patch) | |
tree | 05b854a871a6448f455ca1e98138def79fcee81c /Modules/_heapqmodule.c | |
parent | 183a941bc148533a299c39123e7d6fe33c655c36 (diff) | |
download | cpython-c784c6db6056729427b8e61161101e4bb5d73150.zip cpython-c784c6db6056729427b8e61161101e4bb5d73150.tar.gz cpython-c784c6db6056729427b8e61161101e4bb5d73150.tar.bz2 |
Tighten-up code by eliminating an unnecessary variable.
Diffstat (limited to 'Modules/_heapqmodule.c')
-rw-r--r-- | Modules/_heapqmodule.c | 18 |
1 files changed, 8 insertions, 10 deletions
diff --git a/Modules/_heapqmodule.c b/Modules/_heapqmodule.c index 6767feb..d709dd4 100644 --- a/Modules/_heapqmodule.c +++ b/Modules/_heapqmodule.c @@ -50,7 +50,7 @@ siftdown(PyListObject *heap, Py_ssize_t startpos, Py_ssize_t pos) static int siftup(PyListObject *heap, Py_ssize_t pos) { - Py_ssize_t startpos, endpos, childpos, rightpos, limit; + Py_ssize_t startpos, endpos, childpos, limit; PyObject *tmp1, *tmp2; int cmp; @@ -67,16 +67,15 @@ siftup(PyListObject *heap, Py_ssize_t pos) while (pos < limit) { /* Set childpos to index of smaller child. */ childpos = 2*pos + 1; /* leftmost child position */ - rightpos = childpos + 1; - if (rightpos < endpos) { + if (childpos + 1 < endpos) { cmp = PyObject_RichCompareBool( PyList_GET_ITEM(heap, childpos), - PyList_GET_ITEM(heap, rightpos), + PyList_GET_ITEM(heap, childpos + 1), Py_LT); if (cmp == -1) return -1; if (cmp == 0) - childpos = rightpos; + childpos++; /* rightmost child is smallest */ if (endpos != PyList_GET_SIZE(heap)) { PyErr_SetString(PyExc_RuntimeError, "list changed size during iteration"); @@ -402,7 +401,7 @@ siftdown_max(PyListObject *heap, Py_ssize_t startpos, Py_ssize_t pos) static int siftup_max(PyListObject *heap, Py_ssize_t pos) { - Py_ssize_t startpos, endpos, childpos, rightpos, limit; + Py_ssize_t startpos, endpos, childpos, limit; PyObject *tmp1, *tmp2; int cmp; @@ -419,16 +418,15 @@ siftup_max(PyListObject *heap, Py_ssize_t pos) while (pos < limit) { /* Set childpos to index of smaller child. */ childpos = 2*pos + 1; /* leftmost child position */ - rightpos = childpos + 1; - if (rightpos < endpos) { + if (childpos + 1 < endpos) { cmp = PyObject_RichCompareBool( - PyList_GET_ITEM(heap, rightpos), + PyList_GET_ITEM(heap, childpos + 1), PyList_GET_ITEM(heap, childpos), Py_LT); if (cmp == -1) return -1; if (cmp == 0) - childpos = rightpos; + childpos++; /* rightmost child is smallest */ if (endpos != PyList_GET_SIZE(heap)) { PyErr_SetString(PyExc_RuntimeError, "list changed size during iteration"); |