Run Code
|
API
|
Code Wall
|
Misc
|
Feedback
|
Login
|
Theme
|
Privacy
|
Patreon
FindKthElementDivideConquer
Language:
Ada
Assembly
Bash
C#
C++ (gcc)
C++ (clang)
C++ (vc++)
C (gcc)
C (clang)
C (vc)
Client Side
Clojure
Common Lisp
D
Elixir
Erlang
F#
Fortran
Go
Haskell
Java
Javascript
Kotlin
Lua
MySql
Node.js
Ocaml
Octave
Objective-C
Oracle
Pascal
Perl
Php
PostgreSQL
Prolog
Python
Python 3
R
Rust
Ruby
Scala
Scheme
Sql Server
Swift
Tcl
Visual Basic
Layout:
Vertical
Horizontal
//g++ 5.4.0 #include <iostream> int findKthElement(int *arry1,int *arry2,int *end1,int *end2,int k); int main() { std::cout << "Hello, world!\n"; int arr1[5] = {2, 3, 6, 7, 9}; int arr2[4] = {1, 4, 8, 10}; int k=5; std::cout<<findKthElement(arr1,arr2,arr1+5,arr2+4,k-1); } int findKthElement(int *arry1,int *arry2,int *end1,int *end2,int k){ if(arry1 == end1) { return arry2[k]; } if(arry2 == end2 ) { return arry1[k]; } int mid1 = (end1 - arry1 )/2; int mid2 = (end2 - arry2)/2; if(mid1 + mid2 < k){ if(arry1[mid1] > arry2[mid2]){ findKthElement(arry1,arry2+mid2+1,end1,end2,k-mid2-1); } else { findKthElement(arry1+mid1+1,arry2,end1,end2,k-mid1-1); } }else{ if(arry1[mid1] > arry2[mid2]){ findKthElement(arry1,arry2,arry1+mid1,end2,k); } else { findKthElement(arry1,arry2,end1,arry2+mid2,k); } } }
g++
Show compiler warnings
[
+
] Compiler args
[
+
]
Show input
Compilation time: 0.32 sec, absolute running time: 0.14 sec, cpu time: 0 sec, memory peak: 3 Mb, absolute service time: 0,47 sec
edit mode
|
history
|
discussion