数据结构--ArrayList02 逆置顺序表的所有元素
1)题目:
设置一个高效算法,将顺序表L的所有元素逆置,要求算法的空间复杂度为O(1)
2)思路: 头尾元素依次交换
3)代码:
package com.sam.datastruct.arrayList; public class P2_02 { public void function(ArrayList<Integer> list){ if (list == null || list.size() <= 2) { return; } Integer tmp; for(int i = 0; i < list.size() / 2; ++i){ tmp = list.get(i);//引用的是自己实现的ArrayList中的方法 list.update(list.get(list.size() - 1 - i), i);//引用的是自己实现的ArrayList中的方法 list.update(tmp, list.size() - 1 - i);//引用的是自己实现的ArrayList中的方法 } } public static void main(String[] args) { P2_02 p = new P2_02(); ArrayList<Integer> list = new ArrayList<>(); list.initacs(10); p.function(list); System.out.println(list.toString()); } }
上一篇:
Java基础知识总结(2021版)
下一篇:
HTML最新面试题(笔试面试题)