当前位置: 首页 > news >正文

网站谁做的比较好看wordpress上传rar

网站谁做的比较好看,wordpress上传rar,网络营销推广公司结构,seo都用在哪些网站5-123 数组中可以随机访问#xff0c;相反链表就不行 leetcode#xff1a;206 反转一个链表#xff0c;链表如果没有特别声明#xff0c;则节点的值不发生改变 一共需要三个指针#xff1a;current指向当前需要处理的指针 next指向当前需要处理的元素的下一个元素的指针…5-123 数组中可以随机访问相反链表就不行 leetcode206 反转一个链表链表如果没有特别声明则节点的值不发生改变 一共需要三个指针current指向当前需要处理的指针 next指向当前需要处理的元素的下一个元素的指针 pre保存修改之后链表指向的指针 首先实现一个节点的反转 然后将pre、cur、next进行更新向后移动一个指针 pre更新为cur指针 cur更新为next指针 next由于本身的更新指向下一个元素的位置 然后再重复前面的操作将cur指向pre指针然后更新pre、cur、next指针 练习题leetcode 92 using namespace std;struct ListNode{int val;ListNode *next;ListNode(int x) :val(x), next(NULL){} }; ListNode* creatLinkedList(int arr[], int n){if(n0)return NULL;ListNode* headnew ListNode(arr[0]);ListNode* curNodehead;for(int i1; in; i){curNode-nextnew ListNode(arr[i]);curNodecurNode-next;}return head; }void printLinkedList(ListNode* head){ListNode* curNodehead;while(curNode ! NULL){cout curNode-val-;curNodecurNode-next;}coutNULLendl;return;}void deleteLinkedList(ListNode* head){ListNode* curNodehead;while(curNode!NULL){ListNode* DelNodecurNode;curNodecurNode-next;delete delNode;}return; } class Solution{pulic:ListNode* reverseList(ListNode* head){ListNode* preNULL;ListNode* curhead;while(cur ! NULL){ListNode* nextcur-next;cur-nextpre;precur;curnext;}return pre;//pre指向该链表的头结点 } };int main(){int arr[]{1,2,3,4,5};int nsizeof(arr)/sizeof(int);//计算出arr数组中的长度 ListNode* headcreateLinkedList(arr,n);printLinkedList(head);ListNode* head2Solution().reverseList(head);printLinkedList(head2);deleteLinkedList(head2);return 0; }思考题leetcode 83 leetcode86 leetcode 328题 设立链表的虚拟头结点 举例如删除3的元素 该逻辑对删除最后一个元素依然使用对删除第一个元素不适用。 增加一个虚拟变量 练习题leetcode 82 leetcode 21 5-4 5 6 leetcode 24 创建几个指针去预先保留要处理的几个节点 思考可不可以不用next 练习题leetcode 25 leetcode 147 为一个链表进行插入排序 leetcode 148 SORT LIST 写一个排序算法用O(n *logn)的时间复杂度为一个链表进行排序 自顶向上自顶向下 双指针技术 leetcode 19题 优化之后只遍历一遍链表p和q之间的距离一定p之前有多少个点不确定当q移到NULL时停止。
http://wiki.neutronadmin.com/news/2694/

相关文章: