[libc++] Granularize <type_traits> includes in <algorithm>

Reviewed By: Mordante, #libc

Spies: libcxx-commits, wenlei

Differential Revision: https://reviews.llvm.org/D140673
diff --git a/libcxx/include/algorithm b/libcxx/include/algorithm
index 52d9cc9..0f9767c 100644
--- a/libcxx/include/algorithm
+++ b/libcxx/include/algorithm
@@ -1719,7 +1719,6 @@
 #include <__config>
 #include <__debug>
 #include <cstddef>
-#include <type_traits>
 #include <version>
 
 #include <__algorithm/adjacent_find.h>
@@ -1933,6 +1932,7 @@
 #  include <iterator>
 #  include <memory>
 #  include <stdexcept>
+#  include <type_traits>
 #  include <utility>
 #endif