mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2026-02-02 18:39:09 +08:00
替换图片链接
This commit is contained in:
@@ -35,7 +35,7 @@ public:
|
||||
```
|
||||
|
||||
耗时如下:
|
||||

|
||||

|
||||
|
||||
其直观上来看数组的insert操作是O(n)的,整体代码的时间复杂度是O(n^2)。
|
||||
|
||||
@@ -68,7 +68,7 @@ public:
|
||||
|
||||
耗时如下:
|
||||
|
||||

|
||||

|
||||
|
||||
大家都知道对于普通数组,一旦定义了大小就不能改变,例如int a[10];,这个数组a至多只能放10个元素,改不了的。
|
||||
|
||||
@@ -95,7 +95,7 @@ for (int i = 0; i < vec.size(); i++) {
|
||||
就是重新申请一个二倍于原数组大小的数组,然后把数据都拷贝过去,并释放原数组内存。(对,就是这么原始粗暴的方法!)
|
||||
|
||||
举一个例子,如图:
|
||||

|
||||

|
||||
|
||||
原vector中的size和capicity相同都是3,初始化为1 2 3,此时要push_back一个元素4。
|
||||
|
||||
@@ -138,7 +138,7 @@ public:
|
||||
|
||||
耗时如下:
|
||||
|
||||

|
||||

|
||||
|
||||
这份代码就是不让vector动态扩容,全程我们自己模拟insert的操作,大家也可以直观的看出是一个O(n^2)的方法了。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user