📄 tslist.in
字号:
# GetCount <expected count># IsEmpty <0 = list not empty, 1 = list empty># GetHead <expected value># Note : ReplaceHead calls the void*& GetHead() on the left hand side of# an experession. For example list.GetHead() = pSomeVoidPtr;# ReplaceHead <new value># GetTail <expected value># Note : ReplaceTail calls the void*& GetTail() on the left hand side of# an experession. For example list.GetTail() = pSomeVoidPtr;# ReplaceTail <new value># RemoveHead# RemoveTail# AddHead <value># AddHeadList <comma seperated list of integers># AddTail <value># AddTailList <comma seperated list of integers># RemoveAll# GetHeadPosition# GetTailPosition# GetNext <expected value># ReplaceNext <new value># GetPrev <expected value># ReplacePrev <new value># GetAtNext <0 = value is not valid, 1 = value is valid> <expected value># GetAtPrev <0 = value is not valid, 1 = value is valid> <expected value># ReplaceAtPrev <new value># GetAt <expected value># ReplaceAt <new value># SetAt <new value># RemoveAt# Find <value> <0 = don't specify position, 1 = specify current position># FindIndex <index># IsPosValid <0 = position not valid, 1 = position valid># ClearPos# Test initial conditionsGetCount 0IsEmpty 1# Test Head operationsGetCount 0AddHead 1GetCount 1IsEmpty 0GetHead 1AddHead 2GetCount 2GetHead 2RemoveHeadGetHead 1ReplaceHead 3GetCount 1GetHead 3RemoveHeadGetCount 0# Test Tail operationsGetCount 0AddTail 1GetCount 1IsEmpty 0GetTail 1AddTail 2GetCount 2GetTail 2RemoveTailGetTail 1ReplaceTail 3GetCount 1GetTail 3RemoveTailGetCount 0# Test mixed head and tail operationsGetCount 0AddTail 1AddTail 2AddTail 3GetCount 3GetHead 1RemoveHeadGetHead 2RemoveHeadGetHead 3GetTail 3AddTail 5GetTail 5AddHead 4GetHead 4RemoveTailGetTail 3RemoveTailGetTail 4RemoveTailGetCount 0# Test RemoveAllGetCount 0AddHead 1AddTail 2AddHead 3AddTail 4GetCount 4RemoveAllGetCount 0# Test GetHeadPositionIsEmpty 1ClearPosIsPosValid 0GetHeadPositionIsPosValid 0AddHead 1GetHeadPositionIsPosValid 1RemoveHeadGetHeadPositionIsPosValid 0# Test GetTailPositionIsEmpty 1ClearPosIsPosValid 0GetTailPositionIsPosValid 0AddHead 1GetTailPositionIsPosValid 1RemoveHeadGetTailPositionIsPosValid 0# Test GetNextIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetHeadPositionIsPosValid 1GetNext 1GetNext 2GetNext 3IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test ReplaceNextIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetHeadPositionIsPosValid 1GetNext 1GetNext 2GetNext 3IsPosValid 0GetHeadPositionIsPosValid 1ReplaceNext 4ReplaceNext 5ReplaceNext 6IsPosValid 0GetHeadPositionIsPosValid 1GetNext 4GetNext 5GetNext 6IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test GetPrevIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetTailPositionIsPosValid 1GetPrev 3GetPrev 2GetPrev 1IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test ReplaceNextIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetTailPositionIsPosValid 1GetPrev 3GetPrev 2GetPrev 1IsPosValid 0GetTailPositionIsPosValid 1ReplacePrev 4ReplacePrev 5ReplacePrev 6IsPosValid 0GetTailPositionIsPosValid 1GetPrev 4GetPrev 5GetPrev 6IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test mixed GetNext, GetPrev, ReplaceNext, and ReplacePrev operationsIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3AddTail 4GetHeadPositionGetNext 1ReplaceNext 5GetNext 3ReplaceNext 6IsPosValid 0GetTailPositionGetPrev 6GetPrev 3GetPrev 5GetPrev 1IsPosValid 0GetTailPositionGetPrev 6ReplacePrev 7GetPrev 5ReplacePrev 8IsPosValid 0GetHeadPositionGetNext 8GetNext 5GetNext 7GetNext 6GetHeadPositionReplaceNext 9GetPrev 5GetNext 9ReplacePrev 10GetNext 9GetPrev 10GetNext 9GetNext 10GetNext 7GetNext 6IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHead# Test GetAtNextIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetHeadPositionIsPosValid 1GetAtNext 1 2GetAtNext 1 3IsPosValid 1GetAtNext 0 0IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test GetAtPrevIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetTailPositionIsPosValid 1GetAtPrev 1 2GetAtPrev 1 1IsPosValid 1#GetAtPrev 0 0 # causes crashGetPrev 1IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test ReplaceAtNextIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3GetTailPositionIsPosValid 1GetPrev 3GetPrev 2GetPrev 1IsPosValid 0GetTailPositionIsPosValid 1ReplaceAtPrev 4ReplaceAtPrev 5IsPosValid 1GetPrev 5IsPosValid 0GetTailPositionIsPosValid 1GetPrev 3GetPrev 4GetPrev 5IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test mixed GetAtNext, GetAtPrev, and ReplaceAtPrev operationsIsEmpty 1ClearPosAddTail 1AddTail 2AddTail 3AddTail 4GetHeadPositionGetAtNext 1 2ReplaceAtPrev 5GetAtNext 1 2GetAtNext 1 3GetAtPrev 1 2GetAtNext 1 3GetAtNext 1 4ReplaceAtPrev 6ReplaceAtPrev 7GetAtNext 1 6GetAtNext 1 4GetAtNext 0 0IsPosValid 0GetHeadPositionGetNext 5GetNext 7GetNext 6GetNext 4IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHead# Test GetAt, ReplaceAt, and SetAtIsEmpty 1AddTail 1AddTail 2AddTail 3GetHeadPositionGetAt 1GetNext 1GetAt 2GetNext 2GetAt 3GetNext 3IsPosValid 0GetHeadPositionGetNext 1ReplaceAt 4GetNext 4SetAt 5GetNext 5IsPosValid 0GetHeadPositionGetNext 1GetNext 4GetNext 5IsPosValid 0RemoveHeadRemoveHeadRemoveHead# Test RemoveAtIsEmpty 1AddTail 1GetHeadPositionIsPosValid 1RemoveAtIsPosValid 0IsEmpty 1AddTail 2AddTail 3AddTail 4# Test removal from headGetHeadPositionRemoveAtGetAt 3IsPosValid 1GetCount 2# Test to see if you can add something to the head# and use the current position to visit the new elementAddHead 5GetPrev 3IsPosValid 1GetPrev 5IsPosValid 0# Test removal from the middleGetHeadPositionGetNext 5RemoveAtGetCount 2GetAt 4GetAtPrev 1 5GetPrev 5IsPosValid 0AddHead 6# verify that the list contains what we expectGetCount 3GetHeadPositionGetNext 6GetNext 5GetNext 4IsPosValid 0# Test removal from the tailGetTailPositionGetAt 4RemoveAtGetCount 2IsPosValid 1GetAt 5RemoveAtIsPosValid 1GetAt 6RemoveAtIsPosValid 0IsEmpty 1# Test InsertBeforeIsEmpty 1# Test insert on empty listGetHeadPositionInsertBefore 1GetCount 1GetAt 1# Test insert at head position with elements in the listGetHeadPositionInsertBefore 2GetAt 2# Test insert in the middle of a listGetAtNext 1 1InsertBefore 3GetAt 3# Test insert at tailGetTailPositionInsertBefore 4GetAt 4# verify that the list contains what we expectGetHeadPositionGetNext 2GetNext 3GetNext 4GetNext 1IsPosValid 0# Test insert with an invalid positionInsertBefore 5IsPosValid 1GetHeadPositionGetNext 5GetNext 2GetNext 3GetNext 4GetNext 1RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test InsertAfterIsEmpty 1# Test insert into an empty listGetHeadPositionInsertAfter 1GetAt 1GetCount 1# Test insert at head with elements in the listGetHeadPositionInsertAfter 2GetAt 2# Test insert in the middle of ths listInsertAfter 3GetAt 3# Test insert at tail with elements in the listGetTailPositionInsertAfter 4GetAt 4# Verify the list contains what we expectGetHeadPositionGetNext 1GetNext 2GetNext 3GetNext 4IsPosValid 0# Test insert with an invalid positionInsertAfter 5IsPosValid 1GetHeadPositionGetNext 1GetNext 2GetNext 3GetNext 4GetNext 5IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test InsertBefore and InsertAt mixIsEmpty 1GetHeadPositionInsertBefore 1InsertAfter 2InsertBefore 3InsertAfter 4GetHeadPositionGetNext 1GetNext 3GetNext 4GetNext 2IsPosValid 0InsertBefore 5GetPrev 5IsPosValid 0InsertAfter 6GetHeadPositionGetNext 5GetNext 1GetNext 3GetNext 4GetNext 2GetNext 6IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test FindIsEmpty 1# Test find on an empty listGetHeadPositionIsPosValid 0Find 1 0IsPosValid 0# Populate the listAddTail 1AddTail 2AddTail 3AddTail 2AddTail 4AddTail 5# Test find without specifying a positionFind 2 0IsPosValid 1GetAt 2GetAtPrev 1 1GetAtNext 1 2GetAtNext 1 3# Test find by specifying the head as the starting positionGetHeadPositionFind 2 1IsPosValid 1GetAt 2GetAtPrev 1 1GetAtNext 1 2GetAtNext 1 3# Test find by specifying a position in the middleFind 2 1IsPosValid 1GetAt 2GetAtPrev 1 3GetAtNext 1 2GetAtNext 1 4# Test Find by specifying the tail as the starting positionGetTailPositionFind 2 1IsPosValid 0# Test Find with an invalid position specifiedFind 2 1IsPosValid 0# Test Find with a value not in the listFind 7 0IsPosValid 0GetHeadPositionFind 7 1IsPosValid 0GetHeadPositionGetNext 1GetNext 2GetNext 3Find 7 1IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test FindIndexIsEmpty 1# Test on empty listFindIndex 0IsPosValid 0AddTail 1AddTail 2AddTail 3AddTail 4FindIndex 0IsPosValid 1GetAt 1FindIndex 2IsPosValid 1GetAt 3FindIndex 1IsPosValid 1GetAt 2FindIndex 3IsPosValid 1GetAt 4FindIndex 4IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHead# Test AddHead(CHXSimpleList*)IsEmpty 1AddHeadList ""IsEmpty 1AddHeadList "1, 2, 3"GetCount 3GetHeadPositionGetNext 1GetNext 2GetNext 3IsPosValid 0AddHeadList ""GetCount 3AddHeadList "4, 5, 6"GetHeadPositionGetNext 4GetNext 5GetNext 6GetNext 1GetNext 2GetNext 3IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test AddTail(CHXSimpleList*)IsEmpty 1AddTailList ""IsEmpty 1AddTailList "1, 2, 3"GetCount 3GetHeadPositionGetNext 1GetNext 2GetNext 3IsPosValid 0AddTailList ""GetCount 3AddTailList "4, 5, 6"GetHeadPositionGetNext 1GetNext 2GetNext 3GetNext 4GetNext 5GetNext 6IsPosValid 0RemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHeadRemoveHead# Test iteratorIsEmpty 1# Test iterator on empty listTestIteratorAddTail 1AddTail 2AddTail 3TestIteratorRemoveHeadRemoveHeadRemoveHead
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -