aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorleiyu3 <s444814187@gmail.com>2022-09-21 23:37:24 -0400
committerleiyu3 <s444814187@gmail.com>2022-09-21 23:37:24 -0400
commitfc4408e3c8db1396dfc9e8d8af2c1a1563ae734e (patch)
tree82c4dad6da9a3dcfef1db08733d1f6a7b9e3e521
parenta33316da890a242d869eb84c0b5b35e062c1c811 (diff)
downloadvector_c-fc4408e3c8db1396dfc9e8d8af2c1a1563ae734e.tar.gz
vector_c-fc4408e3c8db1396dfc9e8d8af2c1a1563ae734e.zip
implement remove
-rw-r--r--main.c17
1 files changed, 16 insertions, 1 deletions
diff --git a/main.c b/main.c
index f451af6..ab99fb3 100644
--- a/main.c
+++ b/main.c
@@ -90,6 +90,17 @@ void delete(vector_t *vec, int index){
90 vec->cur_size = vec->cur_size - 1; 90 vec->cur_size = vec->cur_size - 1;
91} 91}
92 92
93void remove_val(vector_t *vec, int value){
94 int i = 0;
95 while (i < vec->cur_size){
96 if (vec->arr[i] == value){
97 delete(vec, i);
98 continue;
99 }
100 i++;
101 }
102}
103
93void prepend(vector_t *vec, int value){ 104void prepend(vector_t *vec, int value){
94 insert(vec, 0, value); 105 insert(vec, 0, value);
95} 106}
@@ -125,10 +136,14 @@ int main(void){
125 printf("-----\n"); 136 printf("-----\n");
126 137
127 for (int i = 0; i < vec.max_size; i++){ 138 for (int i = 0; i < vec.max_size; i++){
139 if (i%2 == 0){
140 push(&vec, 5);
141 continue;
142 }
128 push(&vec, i); 143 push(&vec, i);
129 } 144 }
130 print_vec(vec); 145 print_vec(vec);
131 146 remove_val(&vec, 5);
132 /* for (int i = 0; i < vec.max_size; i++){ */ 147 /* for (int i = 0; i < vec.max_size; i++){ */
133 /* printf("pop: %d\n", pop(&vec)); */ 148 /* printf("pop: %d\n", pop(&vec)); */
134 /* delete(&vec, 0); */ 149 /* delete(&vec, 0); */