Changeset 1534d9 in git for kernel/f5lists.cc


Ignore:
Timestamp:
Mar 16, 2009, 8:28:07 PM (14 years ago)
Author:
Christian Eder
Branches:
(u'jengelh-datetime', 'ceac47cbc86fe4a15902392bdbb9bd2ae0ea02c6')(u'spielwiese', 'a800fe4b3e9d37a38c5a10cc0ae9dfa0c15a4ee6')
Children:
febf7e79089257c80bba7e793dd2fb03af40b285
Parents:
bc103b1993b606247dbfebaa278db1467ca2c15b
Message:
changed data structure RList, sorted insertion of rules, still problems with degree of monomials of rules


git-svn-id: file:///usr/local/Singular/svn/trunk@11563 2c84dea3-7e68-4137-9b89-c4e89433aadc
File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/f5lists.cc

    rbc103b r1534d9  
    666666        Print("T1: ");
    667667        pWrite(temp->getT1());
     668        Print("%p\n",temp->getT1());
    668669        Print("LP1 Term: ");
    669670        pWrite(temp->getLp1Term());
     
    673674        Print("T2: ");
    674675        pWrite(temp->getT2());
     676        Print("%p\n",temp->getT2());
    675677        Print("LP2 Term: ");
    676678        pWrite(temp->getLp2Term());
     
    762764    //Print("ADDRESS OF RNODE: %p\n",newElement);
    763765    //Print("ADDRESS OF RNODE DATA: %p\n",newElement->getRule());
    764     newElement->next    =   this;
     766    if(NULL == this || this->getRuleIndex() < newElement->getRuleIndex()) {
     767        newElement->next    =   this;
     768    }
     769    else {
     770        if(pDeg(newElement->getRuleTerm()) > pDeg(this->getRuleTerm())) {
     771                newElement->next    =   this;
     772        }
     773        if(-1 == pLmCmp(newElement->getRuleTerm(),this->getRuleTerm())) {
     774            Print("HAHI\n");
     775            Print("%ld\n",pDeg(newElement->getRuleTerm()));
     776            Print("%ld\n",pDeg(this->getRuleTerm()));
     777           
     778            pWrite(newElement->getRuleTerm());
     779            pWrite(this->getRuleTerm());
     780            RNode* temp    =   this;
     781            while(NULL != temp->next && pDeg(newElement->getRuleTerm()) <= pDeg(temp->next->getRuleTerm())
     782                    && -1 == pLmCmp(newElement->getRuleTerm(),temp->next->getRuleTerm())) {
     783                temp    =   temp->next;
     784            }
     785            newElement->next    =   temp->next;
     786            temp->next          =   newElement;
     787            return this;
     788        }
     789        else {
     790            newElement->next    =   this;
     791            return newElement;
     792        }
     793    }
    765794    return newElement;
    766795}
     
    788817*/
    789818RList::RList() {
    790     first = new RNode();
     819    first = NULL;
    791820}
    792821
     
    798827    RNode* temp;
    799828    //Print("%p\n",first);
    800     while(first->getRule()) {
     829    while(first) {
    801830        temp    =   first;
    802831        first   =   first->getNext();
Note: See TracChangeset for help on using the changeset viewer.