Sun, 23 Nov 2025 13:15:19 +0100
optimize sorted insertion by using the infimum instead of the supremum
The reason is that the supremum returns the equal element with the smallest index, and we want the largest.
Therefore, we use the infimum, which already gives us the largest index when there are equal elements, and increase the index by one. The infimum is also guaranteed to exist in that case.
| 952 | 1 | <?xml version="1.0" encoding="utf-8"?> |
| 2 | <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003"> | |
| 3 | <ItemGroup> | |
| 4 | <Filter Include="Header"> | |
| 5 | <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier> | |
| 6 | <Extensions>h;hh;hpp;hxx;h++;hm;inl;inc;ipp;xsd</Extensions> | |
| 7 | </Filter> | |
| 8 | <Filter Include="Source"> | |
| 9 | <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier> | |
| 10 | <Extensions>cpp;c;cc;cxx;c++;cppm;ixx;def;odl;idl;hpj;bat;asm;asmx</Extensions> | |
| 11 | </Filter> | |
| 12 | </ItemGroup> | |
| 13 | <ItemGroup> | |
| 14 | <ClInclude Include="..\..\src\cx\allocator.h"> | |
| 15 | <Filter>Header</Filter> | |
| 16 | </ClInclude> | |
| 17 | <ClInclude Include="..\..\src\cx\array_list.h"> | |
| 18 | <Filter>Header</Filter> | |
| 19 | </ClInclude> | |
| 20 | <ClInclude Include="..\..\src\cx\buffer.h"> | |
| 21 | <Filter>Header</Filter> | |
| 22 | </ClInclude> | |
| 23 | <ClInclude Include="..\..\src\cx\collection.h"> | |
| 24 | <Filter>Header</Filter> | |
| 25 | </ClInclude> | |
| 26 | <ClInclude Include="..\..\src\cx\common.h"> | |
| 27 | <Filter>Header</Filter> | |
| 28 | </ClInclude> | |
| 29 | <ClInclude Include="..\..\src\cx\compare.h"> | |
| 30 | <Filter>Header</Filter> | |
| 31 | </ClInclude> | |
| 32 | <ClInclude Include="..\..\src\cx\hash_key.h"> | |
| 33 | <Filter>Header</Filter> | |
| 34 | </ClInclude> | |
| 35 | <ClInclude Include="..\..\src\cx\hash_map.h"> | |
| 36 | <Filter>Header</Filter> | |
| 37 | </ClInclude> | |
| 38 | <ClInclude Include="..\..\src\cx\iterator.h"> | |
| 39 | <Filter>Header</Filter> | |
| 40 | </ClInclude> | |
| 41 | <ClInclude Include="..\..\src\cx\json.h"> | |
| 42 | <Filter>Header</Filter> | |
| 43 | </ClInclude> | |
| 44 | <ClInclude Include="..\..\src\cx\linked_list.h"> | |
| 45 | <Filter>Header</Filter> | |
| 46 | </ClInclude> | |
| 47 | <ClInclude Include="..\..\src\cx\list.h"> | |
| 48 | <Filter>Header</Filter> | |
| 49 | </ClInclude> | |
| 50 | <ClInclude Include="..\..\src\cx\map.h"> | |
| 51 | <Filter>Header</Filter> | |
| 52 | </ClInclude> | |
|
1396
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
53 | <ClInclude Include="..\..\src\cx\kv_list.h"> |
|
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
54 | <Filter>Header</Filter> |
|
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
55 | </ClInclude> |
| 952 | 56 | <ClInclude Include="..\..\src\cx\mempool.h"> |
| 57 | <Filter>Header</Filter> | |
| 58 | </ClInclude> | |
| 59 | <ClInclude Include="..\..\src\cx\printf.h"> | |
| 60 | <Filter>Header</Filter> | |
| 61 | </ClInclude> | |
| 62 | <ClInclude Include="..\..\src\cx\properties.h"> | |
| 63 | <Filter>Header</Filter> | |
| 64 | </ClInclude> | |
| 65 | <ClInclude Include="..\..\src\cx\string.h"> | |
| 66 | <Filter>Header</Filter> | |
| 67 | </ClInclude> | |
| 68 | <ClInclude Include="..\..\src\cx\test.h"> | |
| 69 | <Filter>Header</Filter> | |
| 70 | </ClInclude> | |
| 71 | <ClInclude Include="..\..\src\cx\tree.h"> | |
| 72 | <Filter>Header</Filter> | |
| 73 | </ClInclude> | |
|
971
cc204fc56c9c
rename utils.h to streams.h
Mike Becker <universe@uap-core.de>
parents:
952
diff
changeset
|
74 | <ClInclude Include="..\..\src\cx\streams.h"> |
| 952 | 75 | <Filter>Header</Filter> |
| 76 | </ClInclude> | |
| 77 | </ItemGroup> | |
| 78 | <ItemGroup> | |
| 79 | <ClCompile Include="..\..\src\allocator.c"> | |
| 80 | <Filter>Source</Filter> | |
| 81 | </ClCompile> | |
| 82 | <ClCompile Include="..\..\src\array_list.c"> | |
| 83 | <Filter>Source</Filter> | |
| 84 | </ClCompile> | |
| 85 | <ClCompile Include="..\..\src\buffer.c"> | |
| 86 | <Filter>Source</Filter> | |
| 87 | </ClCompile> | |
| 88 | <ClCompile Include="..\..\src\compare.c"> | |
| 89 | <Filter>Source</Filter> | |
| 90 | </ClCompile> | |
| 91 | <ClCompile Include="..\..\src\hash_key.c"> | |
| 92 | <Filter>Source</Filter> | |
| 93 | </ClCompile> | |
| 94 | <ClCompile Include="..\..\src\hash_map.c"> | |
| 95 | <Filter>Source</Filter> | |
| 96 | </ClCompile> | |
| 97 | <ClCompile Include="..\..\src\iterator.c"> | |
| 98 | <Filter>Source</Filter> | |
| 99 | </ClCompile> | |
| 100 | <ClCompile Include="..\..\src\json.c"> | |
| 101 | <Filter>Source</Filter> | |
| 102 | </ClCompile> | |
| 103 | <ClCompile Include="..\..\src\linked_list.c"> | |
| 104 | <Filter>Source</Filter> | |
| 105 | </ClCompile> | |
| 106 | <ClCompile Include="..\..\src\list.c"> | |
| 107 | <Filter>Source</Filter> | |
| 108 | </ClCompile> | |
| 109 | <ClCompile Include="..\..\src\map.c"> | |
| 110 | <Filter>Source</Filter> | |
| 111 | </ClCompile> | |
|
1396
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
112 | <ClCompile Include="..\..\src\kv_list.c"> |
|
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
113 | <Filter>Source</Filter> |
|
533ed620fd73
add kv-list files to MSVC project files
Mike Becker <universe@uap-core.de>
parents:
1023
diff
changeset
|
114 | </ClCompile> |
| 952 | 115 | <ClCompile Include="..\..\src\mempool.c"> |
| 116 | <Filter>Source</Filter> | |
| 117 | </ClCompile> | |
| 118 | <ClCompile Include="..\..\src\printf.c"> | |
| 119 | <Filter>Source</Filter> | |
| 120 | </ClCompile> | |
| 121 | <ClCompile Include="..\..\src\properties.c"> | |
| 122 | <Filter>Source</Filter> | |
| 123 | </ClCompile> | |
| 124 | <ClCompile Include="..\..\src\string.c"> | |
| 125 | <Filter>Source</Filter> | |
| 126 | </ClCompile> | |
| 127 | <ClCompile Include="..\..\src\tree.c"> | |
| 128 | <Filter>Source</Filter> | |
| 129 | </ClCompile> | |
|
971
cc204fc56c9c
rename utils.h to streams.h
Mike Becker <universe@uap-core.de>
parents:
952
diff
changeset
|
130 | <ClCompile Include="..\..\src\streams.c"> |
| 952 | 131 | <Filter>Source</Filter> |
| 132 | </ClCompile> | |
|
1023
1f22de6977a1
add szmul.c to msvc project
Mike Becker <universe@uap-core.de>
parents:
971
diff
changeset
|
133 | <ClCompile Include="..\..\src\szmul.c"> |
|
1f22de6977a1
add szmul.c to msvc project
Mike Becker <universe@uap-core.de>
parents:
971
diff
changeset
|
134 | <Filter>Source</Filter> |
|
1f22de6977a1
add szmul.c to msvc project
Mike Becker <universe@uap-core.de>
parents:
971
diff
changeset
|
135 | </ClCompile> |
| 952 | 136 | </ItemGroup> |
| 137 | </Project> |