Skip to content

Commit 0abedd5

Browse files
author
Luke
committed
.
1 parent 1d5ab03 commit 0abedd5

File tree

3 files changed

+24
-37
lines changed

3 files changed

+24
-37
lines changed

binary-tree-maximum-path-sum.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,5 +28,5 @@ inline void test() {
2828
const auto tree = make_tree(-10, make_tree(9),
2929
make_tree(20, make_tree(15), make_tree(17)));
3030
cout << solution.maxPathSum(tree) << endl;
31-
delete_tree(tree);
31+
del_tree(tree);
3232
}

leetcode.h

Lines changed: 22 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
struct ListNode {
2929
int val = 0;
3030
ListNode *next = nullptr;
31-
3231
explicit ListNode(int val) : val(val) {}
3332
};
3433

@@ -48,17 +47,17 @@ template <typename Fn> void foreach (ListNode *n, Fn && fn) {
4847
}
4948

5049
template <typename T = int, typename TIterable = std::initializer_list<T>>
51-
ListNode *make_nodes(TIterable &&iter) {
52-
auto it = std::begin(iter);
53-
auto end = std::end(iter);
54-
if (it == end) {
50+
ListNode *make_nodes(TIterable &&iterable) {
51+
auto end = std::end(iterable);
52+
auto iter = std::begin(iterable);
53+
if (iter == end) {
5554
return nullptr;
5655
}
57-
auto *first = new ListNode(*it++);
58-
for (ListNode *cur = first; it != end; ++it, cur = cur->next) {
59-
cur->next = new ListNode(static_cast<int>(*it));
56+
auto *head = new ListNode(*iter++);
57+
for (ListNode *p = head; iter != end; ++iter, p = p->next) {
58+
p->next = new ListNode(static_cast<int>(*iter));
6059
}
61-
return first;
60+
return head;
6261
}
6362

6463
inline void del_nodes(ListNode *n) {
@@ -85,28 +84,28 @@ inline TreeNode *make_tree(const int v, TreeNode *ln = nullptr,
8584
return new TreeNode{v, ln, rn};
8685
}
8786

88-
inline void delete_tree(TreeNode *n) {
87+
inline void del_tree(TreeNode *n) {
8988
if (n == nullptr) {
9089
return;
9190
}
92-
delete_tree(n->left);
93-
delete_tree(n->right);
91+
del_tree(n->left);
92+
del_tree(n->right);
9493
delete n;
9594
}
9695

97-
template <typename TIterable> void print(TIterable &&iter) {
98-
auto it = std::begin(iter);
99-
auto end = std::end(iter);
96+
template <typename TIterable> void print(TIterable &&iterable) {
97+
auto end = std::end(iterable);
98+
auto iter = std::begin(iterable);
10099
std::cout << "[";
101-
if (it != end) {
102-
std::cout << *it;
103-
++it;
100+
if (iter != end) {
101+
std::cout << *iter;
102+
++iter;
104103
}
105-
while (it != end) {
106-
std::cout << ", " << *it;
107-
++it;
104+
while (iter != end) {
105+
std::cout << ", " << *iter;
106+
++iter;
108107
}
109-
std::cout << "]" << std::endl;
108+
std::cout << "]";
110109
}
111110

112111
inline void print(std::ostream &out, const int it) {
@@ -119,19 +118,7 @@ inline void print(std::ostream &out, const bool it) {
119118

120119
template <typename T>
121120
std::ostream &operator<<(std::ostream &out, const std::vector<T> &vec) {
122-
auto it = vec.cbegin();
123-
auto end = vec.cend();
124-
out << "[";
125-
if (it != end) {
126-
print(out, *it);
127-
++it;
128-
while (it != end) {
129-
out << ",";
130-
print(out, *it);
131-
++it;
132-
}
133-
}
134-
out << "]" << std::endl;
121+
print(vec);
135122
return out;
136123
}
137124

main.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
#include "basic-calculator.h"
1+
#include "substring-with-concatenation-of-all-words.h"
22

33
int main(int argc, char *argv[]) { test(); }

0 commit comments

Comments
 (0)